C中的语句块

转载 2013年12月06日 10:11:19
C语言中的语句块(Statement Block) 其实就是由{}括起来的若干条语句。
如:

  1.     {
  2.         int i=1;
  3.         printf ("i=%d\n",i);
  4.     }
复制代码
这就是一个语句块,这个语句块可以放到函数内,作为函数的一个小单元。
要注意的是,语句块中也可以定义局部变量,和函数的局部变量同样道理,每次进入语句块时为变量i分配存储空间,每次退出语句块时释放变量i的存储空间。语句块也构成一个作用域。请看下面的例子:
  1. #include <stdio.h>
  2. int main()
  3. {
  4.     int i=10;
  5.     {
  6.         int i=1;
  7.         printf ("i=%d\n",i);
  8.     }

  9.     printf ("i=%d\n",i);
  10.     return 0;
  11. }
复制代码
这个程序的运行结果是
i=1
i=10
这说明了,语句块中的变量只作用于当前的块内。

C语言变量声明问题——变量定义一定要放在所有执行语句/语句块的最前面吗?

参考网址:http://www.cnblogs.com/web-HCJ/p/4468689.html 报错信息:error C2065: 'salary' : undeclared ...

NorFlash等写操作时不一定需要手动执行擦除命令(观点错误,需要手打擦除命令)

一直有个概念就是在操作常见的Flash:无论是nandflash/spifl

关于flash擦除引起的bug问题小结

u16 irlib_get_free_block(const u8 * libno) { u8 i; vu16 low, up; u16 _libno = le16_to_cp...

华清远见 c补习 4控制语句

  • 2013年07月12日 18:22
  • 358KB
  • 下载

C例子:break语句

  • 2016年08月02日 05:27
  • 1KB
  • 下载

SQlite数据库的C编程接口(三) 预处理语句(Prepared Statements) ——《Using SQlite》读书笔记 .

SQlite数据库的C编程接口(三) 预处理语句(Prepared Statements)  by斜风细雨QQ:253786989    2012-02-04   SQlite3数据库连接完...
  • NorthCan
  • NorthCan
  • 2012年02月04日 10:52
  • 12452

识别(a|b)*a(a|b)语句的C程序

  • 2010年05月12日 14:49
  • 341B
  • 下载

C Primer Plus 第五章:运算符、表达式和语句

本章比较简单,所以没有太多的笔记和理解知识。

C心得 编译时错误提示语句释义

  • 2011年04月27日 12:53
  • 31KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C中的语句块
举报原因:
原因补充:

(最多只允许输入30个字)