首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

sizeof(int)== sizeof(void*)?

在计算机编程中,sizeof(int)表示整数类型(int)的大小,而sizeof(void*)表示指针类型(void*)的大小。这两个值通常是相等的,因为它们都表示内存地址的大小。

在大多数现代计算机系统中,内存地址的大小是32位或64位。因此,在32位系统上,sizeof(int)sizeof(void*)都是4字节(32位),而在64位系统上,它们都是8字节(64位)。

然而,这并不是绝对的。在某些特殊的系统中,内存地址和整数的大小可能不同。在这种情况下,sizeof(int)sizeof(void*)可能会有所不同。

总之,在大多数情况下,sizeof(int)sizeof(void*)是相等的,但这并不是绝对的。在编写跨平台代码时,应该注意这一点。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

sizeof与strlen的区别

int   b=sizeof(str); /*b=20;sizeof 计算的则是分配的数组str[20] 所占的内存空间的大小,不受里面存储的内容影响 ========================...函数的返回类型不能是void。 ************** 二、strlen     strlen(...)是函数,要在运行时才能计算。参数必须是字符型指针(char*)。...;               int len_one = strlen(arr);               int len_two = sizeof(arr);              ...************ 四、参考资料: Sizeof与Strlen的区别与联系(转) 1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。...int b=sizeof(str); //而b=20; >>>> sizeof 计算的则是分配的数组 str[20] 所占的内存空间的大小,不受里面存储的内容改变。

75530

sizeof应用的小陷阱

本篇笔记主要介绍在项目开发中,使用sizeof的一个要注意的地方。...sizeof作用就是返回一个对象或者类型所占的内存字节数。返回值是size_t,这个值依赖于编译系统,一般在嵌入式中我们常见的是返回int型....如果将sizeof的返回值付给一个类型不符的变量,MISRA 规则会报警告。还有一点要注意,C99标准规定,函数、不能确定类型的表达式以及位域(bit-field)成员不能被计算sizeof值。...u8test1; uint16_t u16test2; uint32_t u32test3; }strTestCnt_Type; strTestCnt_Type strTestCntt; 那么用sizeof...由以上测试可以看到sizeof的返回值在不同的平台上不有不同的结果,在实际应用中一定要注意,尤其是在32位系统上,一定要小心应用sizeof,以免引起错误。这就是传说中的字节对齐啊!

75080

sizeof(结构体)的计算

摘要: 经常被计算结构体的sizeof给搞晕,于是找了个时间,静下心来,搞定它。 一、为什么结构体计算这么乱?...4、C++中类的可以看做是特殊的结构体,所以类的sizeof的计算和结构体是一样的。 三、下面拿具体的程序来详细说明: 1 // sizeof(结构体).cpp : 定义控制台应用程序的入口点。...TCHAR* argv[]) 20 { 21 cout<<sizeof(A)<<endl<<sizeof(B); 22 return 0; 23 } 上述程序的输出结果是8和16....1(char)+3(填充)+4(int)=8,同时满足了准则3,不用再填充了,所以sizeof(A)=8。  ...对于结构体B,其中包括了一个复合类型,查看基本类型的时候,要将其中的结构体A拆分成char和int两种类型来看,所以结构体B中的基本数据类型是char,char,int,char,最宽的数据类型是int

1K90

sizeof和strlen的区别

简单介绍: . sizeof是一个操作符,是用来计算操作数的所占内存的大小的,单位是字节 strlen是用来计算字符串的长度的一个函数,需要引用头文件string.h 区别在于sizeof是操作符...,而strlen是一个函数 . sizeof是不关心内存中所存放的数是多少的,只关心内存中的数所占几个字节 而strlen则需要关系内存中的数的多少,strlen函数用来计算字符串的长度,其计算的终点是...和strlen函数的有趣的题目,有利于我们去理解题目之间的区别,在这里我分享给大家: #include int main() { short a = 10; int b...= 2; int c = sizeof(a = b + 2); printf("%d\n",c); printf("%d\n",a); return 0; } 在这里我想先请大家思考一下...接下来我将做出解答: 解答: 最终的答案就是 2 和 10 我相信大家应该和我一样,一开始对这个结果是十分疑惑的,为何是2 和 10呢 因为a是short短整型,只有两个字节,而sizeof有一个特点,

5800
领券