C 中关于 sizeof 的问题
以下为Windows NT下的32位C++程序:
char str[] = “Hello” ;
char *p = str ;
int n = 10;
请计算
sizeof (str ) = 6
sizeof ( p ) = 4
sizeof ( n ) = 4
void Func ( char str[100])
{
请计算
sizeof( str ) = 4
}
void *p = malloc( 100 )
请计算
sizeof ( p ) = 4
这是《高质量C++编程》后面的题目,我有些不理解,一般来说,near类指针字节数为2,far、huge类指针字节数为4。还有整形应该是 2。而且用 Turboc2.0编程
sizeof ( p ) = 2
sizeof ( n ) = 2
为何答案是 4 ?是答案错了吗?或者是32位的缘故?大家帮忙解释一下
char str[] = “Hello” ;
char *p = str ;
int n = 10;
请计算
sizeof (str ) = 6
sizeof ( p ) = 4
sizeof ( n ) = 4
void Func ( char str[100])
{
请计算
sizeof( str ) = 4
}
void *p = malloc( 100 )
请计算
sizeof ( p ) = 4
这是《高质量C++编程》后面的题目,我有些不理解,一般来说,near类指针字节数为2,far、huge类指针字节数为4。还有整形应该是 2。而且用 Turboc2.0编程
sizeof ( p ) = 2
sizeof ( n ) = 2
为何答案是 4 ?是答案错了吗?或者是32位的缘故?大家帮忙解释一下
...全文
相关推荐
c语言sizeof详解
主要介绍了sizeof的概念以及相关用法,我辛辛苦苦找的,希望对大家有所帮助
c语言中sizeof的用法.pdf
c语言中sizeof的用法.pdf
C语言sizeof用法解析[项目代码]
本文深入解析了C语言中sizeof操作符的使用方法及其计算原理。sizeof用于获取变量或数据类型在内存中的字节大小,其返回值类型为size_t。文章详细介绍了sizeof在实际应用中的场景,如动态分配内存、数据类型大小比较和判断系统平台等。同时,文章还指出了sizeof的常见误用,如试图获取动态分配的内存大小、对数组使用sizeof操作符以及在函数参数中使用sizeof等。通过具体的代码示例,文章进一步解析了sizeof的使用方法和注意事项,帮助读者更好地掌握这一知识点。
C语言sizeof用法详解[项目代码]
本文详细介绍了C语言中sizeof运算符的用法及其核心概念。sizeof用于获取数据类型或变量在内存中所占用的字节数,常见于基本数据类型、数组、字符串及指针的计算。通过多个代码示例,展示了sizeof在不同场景下的实际应用,如计算数组长度时需注意数组总字节数与元素类型的结合使用。同时,文章还解释了动态分配内存时sizeof的局限性,指出其无法统计动态分配的内存大小,并强调了正确使用sizeof以避免潜在错误的重要性。
sizeof与strlen区别详解
c语言中最常遇到的问题是字符串处理问题,特别是字符串长度:sizeof与strlen.两者使用时一定要区分开,否着会很容易出错。本文对两者的区别做了详细介绍。


