C语言 您所在的位置:网站首页 语言cosplay是什么意思 C语言

C语言

2023-10-14 04:46| 来源: 网络整理| 查看: 265

更多关于sizeof()的小小题目请阅读[博客]:C语言–指针进阶3–这些指针和数组相关的题目你都会做吗?

sizeof是什么?

sizeof是C语言的一种单目操作符,如C语言的其他操作符++、–等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。

sizeof的使用

举例:请看下面的代码:

int main() { char ch = 'o'; short a = 100; int b = 200; long c = 300; long long d = 400; unsigned int e = 500; int arr[10] = { 0 }; char cha[] = "hello c"; printf("ch的长度:%d 字节\n", sizeof(ch)); printf("a的长度:%d 字节\n", sizeof(a)); printf("b的长度:%d 字节\n", sizeof(b)); printf("c的长度:%d 字节\n", sizeof(c)); printf("d的长度:%d 字节\n", sizeof(d)); printf("e的长度:%d 字节\n", sizeof(e)); printf("\nint型数组arr的长度:%d 字节\n", sizeof(arr)); printf("\n字符型数组cha的长度:%d 字节\n", sizeof(cha)); printf("\nshort类型的长度:%d 字节\n", sizeof(short)); printf("int的长度:%d 字节\n", sizeof(int)); return 0; }

程序输出结果: 在这里插入图片描述

可以看出,sizeof计算的就是变量或者类型在内存中所占存储大小,其单位为字节!

计算数组的大小时:

对于数字型的数组,比如代码中的int型数组,sizeof是这样计算的:(每个元素的大小 ✖ 元素个数),因此代码中int arr[10]这个数组计算出来的结果是40字节,因为每个元素的大小是int型4个字节,一共10个元素,故而一共是40个字节。

对于字符型数组,比如代码中的char cha[] = "hello c";,因为字符串其末尾会自动加上一个结束符“\0”,因此cha[]中实际的字符是这样的:hello c\0,其中空格算一个字符,\0算一个字符,一共8个字符,而一个字符所占空间为1个字节,因此一共有8个字节。

另需注意,sizeof并不是一个函数,而是一个操作符,因此对于一个具体的变量来说,比如a吧,sizeof a这样的不加括号的表述也是正确的,但为了让代码更清晰明确,最好还是加上括号。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有