sizeof函数C语言 sizeof的用法c语言

C语言sizeof函数如何使用?

C语言中的sizeof是一个很有意思的关键字,经常有人用不对,搞不清不是什么。我以前也有用错的时候,现在写一写,也算是提醒一下自己吧。反正现在来看,还在搞sizeof是什么意思,怎么用正确,还是有点搞笑,都经常用的东西,没有理解透彻,就差的太远了。

在平度等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、网站建设 网站设计制作按需求定制网站,公司网站建设,企业网站建设,品牌网站制作,营销型网站,外贸营销网站建设,平度网站建设费用合理。

一 sizeof是什么

sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等,sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。这个操作数不好理解对吧?后面慢慢看就明白了。sizeof的返回值是size_t,在64位机器下,被定义为longunsignedint。

二sizeof如何使用

1、用于数据类型

使用形式:sizeof(type)。其中type如int、double等。例如sizeof(int)、sizeof(char*)、sizeof(double)。这个时候sizeof后面的类型必须用括号()包起来,不包起来是错误的,通过不了编译。其中sizeof(void*)在64位下是8,而sizeof(void)是1。其实,在C语言中sizeof(函数),

如sizeof(main),结果也是1。但是在C++中,sizeof(void)和sizeof(函数)都是非法的,通过不了编译,后面C++就不说了,现在讲C嘛。其实sizeof(函数),sizeof(void)虽然是1,但是是不正确的使用方式。

2、用于变量 

使用形式:sizeof(var)或sizeofvar。当操作基本数据类型的时候,在我64位电脑的结果如下

作用是:计算常量、变量、数据类型在内存中占用的字节数

三、用sizeof计算常量在内存中占用的字节数

sizeof(1)计算常量1在内存中占用的字节数 4

1默认的事一个10进制的整数(int)4

sizeof(2.3f);计算float类型的常量在内存中占用的字节数4

sizeof(2.3); 计算double类型的常量在内存中占用的字节数8

sizeof('a'); 计算'a'字符常量在内存中占用的字节数 1 4?

C语言中sizeof是什么意思

sizeof是C语言中保留关键字,也可以认为是一种运算符,单目运算符。常见的使用方式:

int a=10;

int arr=[1,2,3];

char str[]="hello";

int len_a = sizeof(a);

int len_arr = sizeof(arr);

int len_str = sizeof(str)

printf("len_a=%d,len_arr=%d,len_str=%d\n",len_a,len_arr,len_str)

结果是:len_a=4,len_arr=12,len_str=6

扩展资料:

在 Pascal 语言中,sizeof() 是一种内存容量度量函数,功能是返回一个变量或者类型的大小(以字节为单位)。

在 C 语言中,sizeof() 是一个判断数据类型或者表达式长度的运算符。

在Pascal 语言与C语言中,对 sizeof() 的处理都是在编译阶段进行。

sizeof是C/C++中的一个操作符(operator),简单的说其作用就是返回一个对象或者类型所占的内存字节数。

MSDN上的解释为:

The sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type(including aggregate types). This keyword returns a value of type size_t.

参考资料:

百度百科-sizeof

c语言里:sizeof怎样用法?

1、首先打开VS,新建一个 使用sizeof求出数组的大小 project。

2、接着在左侧文件树添加一个 sizeof.c 源文件。

3、其里面有stdio.h和stdlib.h头文件,也可自己输入。

4、然后输入main函数主体及返回值。

5、定义一个数组,使用sizeof计算出数组的大小。

6、最后编译运行程序,便能输出数组的大小。


分享题目:sizeof函数C语言 sizeof的用法c语言
转载来源:http://myzitong.com/article/doijgco.html