今天在工作时,看到了奇葩的结构体初始化方式,于是我查了一下C99标准文档和gcc的说明文档,终于搞清楚是怎么回事了。 假设有如下结构体定义:typedef struct{ int a, b, c;} MyStruct; 那么结构体的初始化方式如下有三种:(1) C89的初始化方式MyS...
分类:
编程语言 时间:
2014-07-19 20:09:36
阅读次数:
203
bool 数据类型#define TRUE 1//#define FALAE 0#define BOOL intBool flag=1;bool型 实质上是 int型c89没有提供c99 有提供赋值时,应该给true或 false。如果给一个非零值 则储存为1;bool flag =tuue;#in...
分类:
移动开发 时间:
2014-07-16 22:48:28
阅读次数:
206
1. 位字段(bit field)是一个signed int或unsigned int中一组相邻的位(C99还允许_Bool类型位字段)。C使用unsigned int作为给位字段结构分配内存空间的基本单位。位字段由一个结构声明建立,该结构声明为每个字段提供标签,并决定字段的宽度。例如,以下声明建立...
分类:
其他好文 时间:
2014-07-16 12:24:56
阅读次数:
219
0长度的数组在ISO C和C++的规格说明书中是不允许的,但是GCC的C99支持的这种用法。GCC对0长度数组的文档参考:“Arrays of Length Zero”如下代码片段,哪个更简洁更灵活,看一眼就知道了:#include #include typedef struct tagArray....
分类:
其他好文 时间:
2014-07-07 08:25:56
阅读次数:
235
C语言标准的发展C语言的发展历史大致上分为4个阶段:Old Style C、C89、C99和C11.C89是最早的C语言规范,于1989年提出,1990年先由ANSI(美国国家标准委员会,American National Standards Institute)推出ANSI版本,后来被接纳为ISO...
分类:
其他好文 时间:
2014-07-07 00:01:21
阅读次数:
559
引言:调用函数时,通常会因为建立调用、传递参数、跳转到函数代码并返回等花费掉一些时间,C语言的解决办法是使用类函数宏。在C99中,还提出了另外一种方法:内联函数。
内联函数:把函数变为内联函数将建议编译器尽可能快速地调用该函数,至于建议的效果则由实现来定义。因此,使函数变为内联函数可能会简化函数的调用机制,但也可能不起作用。内联函数是通过编译器来实现的,而宏则是在预编译的时候替换...
分类:
编程语言 时间:
2014-07-03 13:48:57
阅读次数:
252
引言:在内核的系统调用函数里,经常遇到函数的参数使用restrict限定词限定的情况,下面就对该关键词做个总结。
1、restrict关键词是C99特性才添加的,因此在编译使用含有该限定词的程序时,一定要在后边添加-std=c99的标志,使得gcc能够支持c99标准。
2、restrict既然是个限定词,那么它限定什么变量呢?它只能限定指针变量!经过它限定的数据对象,表明指针时访问该数据对象的...
分类:
编程语言 时间:
2014-06-30 17:21:09
阅读次数:
245
//导入这个就行了#import //没有导包的时候,提示如下:Implicit declaration of function 'CC_MD5' is invalid in C99CC_MD5( cStr, strlen(cStr),result);
分类:
其他好文 时间:
2014-06-26 23:50:53
阅读次数:
1090
转自:http://blog.csdn.net/imyang2007/article/details/8296331使用gcc编译代码是报出error: 'for' loop initial declarations are only allowed in C99 modenote: use opt...
分类:
其他好文 时间:
2014-06-22 23:43:01
阅读次数:
233
一、指定的初始化
很多人都知道像这样来静态地初始化数组:
int fibs[] = {1,2,3,4,5} ;
C99标准实际上支持一种更为直观简单的方式来初始化各种不同的集合类数据(如:结构体,联合体和数组)。
数组的初始化
我们可以指定数组的元素来进行初始化。这非常有用,特别是当我们需要根据一组#define来保持某种映射关系的同步更新时。来看看一组错误码的定义...
分类:
其他好文 时间:
2014-06-22 14:13:58
阅读次数:
250