C语言花括号

由于C语言本身就是函数式语言,说白了,C程序就是由函数构成的!
所以花括号肯定是用在函数之中,包括函数中的各种流程控制语句中。

实际上,C程序中花括号{}的作用:就是把多个单条语句用花括号{}括起来组成一个结构上可以认为是一个语句的复合语句。

所以在程序中,我们应该把复合语句看成是单条语句,而不是多条语句,这种效果也可以用来区分程序的层次结构。所以花括号都是成对出现的。否则,程序就会报错!

至于你说if语句为什么加花括号,那要看if条件后面的语句情况了,如果是多条语句,逻辑上是一个整体,都要执行的话,就必须要用花括号括起来,表示是一个整体,是一个复合语句;如果只有一条语句,那花括号就可以省略不用了,当然加上也没有任何问题,也是正确的!
时间: 2024-11-04 08:53:03

C语言花括号的相关文章

C语言::验证花括号成对出现

题目要求 编写一个程序,它从标准输入(终端)读取C源代码,并验证所有的花括号都正确的成对出现. 注意:你不必担心注释内部.字符串常量内部和字符常量形式的花括号. 算法分析 我们先判断左花括号的数量是否相等. 如果左右花括号数量不等,肯定不成对! 如果左右花括号数量相等,一定就成对吗??? 好像也不一定. 我们来举例分析一下,左右花括号相等时可能会出现的情况: 1.{{{{{}}}}}(匹配) 2.{}{}{}{}{}(匹配) ... 3.}}}}}{{{{{(不匹配) 4.{{{{}}}}}{(

c语言加花括号的原则

花括号"{" "}"主要是为了表示一段代码是一个部分.主要有以下集中用法:1.函数:int func() { ...} 此处的花括号表示将这个部分括起来,是开始和结束的标志2.宏定义:#define ADD(X,Y) { X+Y;} 只是单纯的把整个部分包含起来3.数组赋值:int a[] = {1,2,3};4.函数内部使用:用于特定语法 如 if(){ ..} while(..){ ...} 等. 5.注意事项 #include<stdio.h> m

PHP的大括号(花括号{})使用详解

一.不管什么程序,function name(){}, for(){}, ….这太多了,不说也知道什么用了. 二.$str{4}在字符串的变量的后面跟上{}大括号和中括号[]一样都是把某个字符串变量当成数组处理. 三.{$val}这种情况就是我遇到的问题,这时候大括号起的作用就是,告诉PHP,括起来的要当成变量处理. 如下例子: //The following is okay as it's inside a string. Constants are not //looked for with

TCL 双引号和花括号的区别

用了很一段时间的Modelsim,用TCL脚本仿真,开始注意起来它,看了些资料,有一个问题始终让我很困惑,那就是花括号 的用法,今天Google了一下,觉得有一点豁然了,记录一下.为了不让自己的翻译影响大家理解,先给出原文,再翻译一下. 第一段: THE RULE SQUARE BRACKETS are used to define a block that's run BEFORE the rest of the command on the current line, and the res

常用PHP中花括号使用规则详解

转自http://www.cnblogs.com/jayleke/archive/2011/11/08/2241609.html 1.简单句法规则(用花括号界定变量名,适用于PHP所有版本): $a = 'flower'; echo "She received some $as"; // 无效:字母s会被当成有效的变量名组成元素,但是这里的变量是$a echo "She received some ${a}s"; // 有效 echo "She recei

如何在switch case中定义变量(不用花括号)

这个周末有幸见到了几位神交已久的库友(天天/迪迪/丁丁),大家一起扯了些有的没的,很开森! 天天考了我一个问题,在C语言里面,如何在switch case中定义一个变量?要求是不用花括号. 这个问题是背景是,下面的代码是编译不过的,因为在case后面不能直接定义变量. switch (v) {    case 1:       int a;       get_value_of_xx(&a);       set_yy(a);       break;    case 2:       //do

PHP变量作用域(花括号、global、闭包)

花括号 很多语言都以花括号作为作用域界限,PHP中只有函数的花括号才构成新的作用域. <?php if (True) { $a = 'var a'; } var_dump($a); for ($i = 0; $i < 1; $i++) { $b = 'var b'; for ($i = 0; $i < 1; $i++) { $c = 'var c'; } var_dump($c); } var_dump($b); var_dump($c); ?> 运行结果是: string(5)

C程序花括号嵌套层次统计(新)

[问题描述] 编写程序,统计给定的C源程序中花括号的最大嵌套层次,并输出花括号嵌套序列,该程序没有语法错误. 注意:1)源程序注释(/* … */)中的花括号应被忽略,不参与统计.2)源程序中的字符串常量不会出现花括号. [输入形式] 要检查的C源程序文件名为input.c,在当前目录下. [输出形式] 向控制台输出花括号的最大嵌套层次数,并在新的一行上按出现的先后顺序输出花括号. [样例输入] 假如当前目录下input.c文件的内容为: #include <stdio.h> main(){ 

*4 通配符及管道与反引号“`”与花括号“{}”的使用

作业4: 一.通配符练习: 1.显示/etc目录下,以字母开头,后面跟了一个非字母及其它任意长度任意字符的文件或目录: ll -dh /etc/[[:alpha:]][^[:alpha:]]* drwxr-xr-x. 6 root root 4.0K 3月   6 17:22 /etc/X11 2.显示/usr/share/man目录下,所有以man开头,后跟一个数字结尾的文件或目录: ll -dh /usr/share/man/man[0-9] drwxr-xr-x. 2 root root