Advertisement

C语言学习笔记:第十四课的小知识与小技巧

阅读量:

一、一维数组与 sizeof

以 sizeof 为函数的参数,在输入多样化的与数组相关联的参数时,该函数返回的结果会有所变化。举例说明如下:

复制代码
 #include <stdio.h>

    
  
    
 int main()
    
 {
    
 	int a[] = { 1,2,3,4 };
    
  
    
 	printf("%zu\n", sizeof(a));
    
 	//sizeof(数组名),就是数组名的特例,会返回整个数组的大小,这里数组大小为16字节
    
  
    
 	printf("%zu\n", sizeof(a + 0));
    
 	//这里a + 0就相当于&a[0],这里就是一个地址,所以会返回指针的大小,这里用的是64为平台,指针大小为8字节
    
  
    
 	printf("%zu\n", sizeof(*a));
    
 	//这里a代表数组首元素地址,所以在解引用后就是首元素,首元素是整型,所以大小是4字节
    
  
    
 	printf("%zu\n", sizeof(a + 1));
    
 	//与上面的a + 0相似,只不过这里是第二个元素的地址,所以还是8字节
    
  
    
 	printf("%zu\n", sizeof(a[0

全部评论 (0)

还没有任何评论哟~