c二维数组初始化为0的2种实现方式

 1 #include
  2 #include
  3 #include
  4 int main()
  5 {
  6     //char a[2][4] ;
  7     char a[2][4] = {0} ;
  8     char *b =a[0];
  9     for (int i=0; i<8; i++)
 10     {
 11         printf("%d ", *(b+i));
 12     }
 13     printf("\n------------\n");
 14     //memset(a,0x0, sizeof(a));
 15
 16     for (int i=0; i<8; i++)

 17     {

              //printf("%d", b[i]); 

             //printf("%d", a[i]);  //这个是错的输出结果,原因是这个时候a的类型是二维指针,编译器的解析不是我们想象的那个样子!

                   //它输出的是那一行的数据,太阳哦!


 18         printf("%d ", *(b+i));
 19     }
 20 }

你可能感兴趣的:(开发工具使用心得,Linux命令)