【sizeof()的使用方式】简洁明了初识C语言

sizeof()介绍

sizeof其实仅仅只是一个操作符,我们要注意它并不是一个函数,他就类似与常见的+、=、-......的操作符,并且sizeof是一个单目操作符。sizeof实际上是获取了数据在内存中所占用的存储空间,以字节为单位来计数。

sizeof()用于数据类型

我们在初学C语言时,就已经知道了sizeof可以计算各种数据类型的所占的存储空间。例如,回忆一下以下代码:

cs 复制代码
#include <stdio.h>
int main()
{
	printf("%d\n", sizeof(int));
	printf("%d\n", sizeof(char));
	printf("%d\n", sizeof(short));
	printf("%d\n", sizeof(long));
	printf("%d\n", sizeof(long long));
	printf("%d\n", sizeof(double));
	printf("%d\n", sizeof(float));
	printf("%d\n", sizeof(long double));

	return 0;
}

运行出来的结果为(不同的计算器运行的结果部分不同):

4

1

2

4

8

8

4

8

sizeof()用于变量

我们可以看一下下面的例子:

cs 复制代码
#include <stdio.h>
int main()
{
	int a = 5;
	int b = 10;
	int arr[] = { 1,2,3,4 };

    printf("%d\n", sizeof(a));
	printf("%d\n", sizeof(b));
	printf("%d\n", sizeof(arr));
	
	return 0;
}

运行的结果为:

4

4

16

sizeof()计算元素个数

用整个数组的sizeof去除以一个元素的sizeof。

数组的长度 =数组所占的大小/ 单个数组元素所占的大小

cs 复制代码
#include<stdio.h>
int main()
{
    int arr[] = {1,2,3,4,5,6};
    int len = sizeof(arr)/sizeof(arr[1]);
    printf("%d\n", len);
    return 0;
}

运行的结果为:

6

相关推荐
2301_800399725 小时前
c snprintf sizeof遇到的问题
c语言·stm32
石油人单挑所有6 小时前
C语言知识体系梳理-第一篇
c语言·开发语言
oioihoii7 小时前
C/C++混合项目中的头文件管理:.h与.hpp的分工与协作
java·c语言·c++
彷徨而立7 小时前
【C/C++】不能在派生类的构造函数初始化列表中直接初始化属于基类的成员变量
c语言·c++
@宁兰8 小时前
算法实现总结 - C/C++
c语言·c++·算法
cs麦子9 小时前
C语言--详解--指针--下
c语言·数据结构·算法
aitoolhub9 小时前
考研论文引用格式 AI 校验实操:工具合集 + 技术原理
c语言·人工智能·考研·aigc
小龙报11 小时前
《VScode搭建教程(附安装包)--- 开启你的编程之旅》
c语言·c++·ide·vscode·单片机·物联网·编辑器
序属秋秋秋12 小时前
《Linux系统编程之进程基础》【进程入门】
linux·运维·c语言·c++·进程·系统编程·fork
say_fall16 小时前
C语言编程实战:每日刷题 - day2
c语言·开发语言·学习