- 博客(8)
- 收藏
- 关注
原创 struct关键字---C语言深度剖析读书笔记9
1.空结构体 所谓空结构体,即结构提内没有元素。 在GCC中,空结构体的大小为0;在VC2010中,则不允许出现空结构体。 struct student { } stu; printf("%d\n",sizeof(stu)); //GCC中打印结果为:0 2.结构体元素的内存对齐 系统在为结构体分配内存的时候,需要考虑内存对齐的问题 int mai
2013-03-19 16:12:06 707 1
原创 C语言深度剖析--读书笔记7_const关键字
1.const修饰只读变量 (1)在GCC中,const修饰的是只读变量。注意,在GCC中,只读变量可以用来定义数组,但是不可以用作case 后面的判断条件。 #include "stdio.h" int main(void) { int i; const int a=1; const int b=2; const int c=3; const int size=10
2013-03-19 09:32:50 936
原创 C语言深度剖析--读书笔记6_return关键字
1.在无返回值的函数中,使用return语句: (1)无返回值的函数中,return后面不带有返回值,合法,表示跳出当前函数体 例1: void func1() { printf("in func1: before return\n"); return; //警告: 在无返回值的函数中,使用return语句,但可以编译通过并执行。 printf("in
2013-03-15 19:32:42 613
原创 C语言深度剖析--读书笔记_void 关键字
void类型的主要作用:限定函数返回类型,限定函数参数类型 1.指针赋值: (1)两种不同类型的指针,不能直接相互赋值(涉及void类型的除外) 例1: long *p1; int * p2; p1=p2; 警告:从不兼容的指针类型赋值 (2)void类型的指针,可以接受任意类型的指针。但是,不能直接把void指针直接赋值给其他 例2: void *p1; in
2013-03-15 12:32:07 531
原创 C语言深度剖析--读书笔记4_signed/unsigned关键字
signed/unsigned关键字 1:char 类型默认是signed ★如下代码: char a[1000]; int i; for(i=0;i { a[i]=-1-i; } printf("%d\n",strlen(a));//在用strlen运算时,从数据起始,直至遇到第一个\0 打印结果:255 ●分析过程如下: a[0]= -1,对应的
2013-03-10 19:22:56 668
原创 C语言深度剖析--读书笔记3_sizeof
sizeof 函数/关键字 1:sizeof作为关键字的操作 int i,r; r=sizeof i;//注意,这里sizeof后面没有括号。所以说sizeof有点像关键字 printf("r is %d\n",r); 打印结果:4 2:sizeof作为函数的操作 int p=10; int r=0; r=sizeof(int)*p;//sizeof(int) 计算i
2013-03-10 11:22:10 560
原创 C语言深度剖析--读书笔记2_static关键字
static 关键字 在c语言中,static关键字可以修饰变量,也可以修饰函数 ●修饰变量: 变量分为全局变量和局部变量。全局变量在内存的静态区,局部变量在内存的堆栈区。所以static修饰的变量又分为:静态全局变量和静态局部变量。 ⊙静态全局变量: 静态全局变量,作用域仅限于变量被定义的文件之中,在外部文件中,即使使用extern声明,也无使用之。
2013-03-10 10:57:04 598
原创 C语言深度剖析--读书笔记1_定义和声明
定义和声明的区别 ●定义: 定义就是告诉编译器创建一个对象,为这个对象分配一块内存,并取上一个名字(变量名)。 一个变量或对象在一定的区域内(比如函数内,全局等)只能被定义一次,若定义多次则会报错。 如下代码: Main() { inti; inti=0; //重定义! } ⊙int i=0与 i=0的区别: int i=
2013-03-10 10:51:24 596
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人