C语言并没有空值这个概念,一般习惯上,指针若是指向地址0便是空值,其他数据若内容是0便是空值。填充一大片内存区域可以使用
memset函数,它的填充长度是按字节计。
整形:int a = 0;
字符型:char a = 0;
数组:
int a[20];
memset( a, 0, sizeof(int)*20 );
C
字符串只需要把第一个字符设为'\0'即可。
当然也可以全部清成0。
char a[20] = "ashdfuih";
memset( a, 0, sizeof(char)*20 );
例如有一个
结构体Some x,可以这样清零:
memset( &x, 0, sizeof(Some) );
如果是一个结构体的数组Some x[10],可以这样:
menset( x, 0, sizeof(Some)*10 );
任何一个指针都可以通过直接赋为0变成空指针:
Some* p = 0;