关于初始化

指针的初始化

int *a = 0;  /*right*/
int *a = 1;  /*wrong*/
//or
int a = 10;
int *b = &a;
 

 

数组的初始化

1. 申明的时候初始化 

/*数组*/
char
array[ARRAY_SIZE_MAX] = {0}; //or char array[] = {0}; //or char arry[]={1,2}; /*未指定数组长度时,可以不用在意*/ char arry[4]={1,'b'}; /*指定size为3是,arry[0]被初始化为1,arry[1]被初始化为b,其余用0补足。等价于{1,'b',0,0}*/ char arry[3]={'a','b',3,4}; /*错误,指定初始化的长度大于数组的max size*/
/*字符串*/
char
str[10]=""; //or char str[10]={'\0'}; //or char str[10]; str[0]='\0';

 

2. memset

char array[ARRAY_SIZE_MAX];  
memset(array, 0, ARRAY_SIZE_MAX);  /*数组*/
memset(array, '\0', ARRAY_SIZE_MAX);  /*字符串*/

 

3. for循环

int i = 0;  

char array[ARRAY_SIZE_MAX];  

for (i = 0; i < ARRAY_SIZE_MAX; i++)  //for循环赋值  

    {  

        array[i] = 0;
}

 

结构体的初始化

 

你可能感兴趣的:(关于初始化)