32位机下的sizeof()
来源:互联网 发布:wifi提示无法加入网络 编辑:程序博客网 时间:2024/04/29 19:30
先申明一下,下面的程序都是运行在32位机上,默认是4字节对齐方式。
char str[] = “www.ibegroup.com” char *p = str ; int n = 10; 请计算 sizeof (str ) = ?
(1) sizeof ( p ) = ?
(2) sizeof ( n ) = ?
(3) void Foo ( char str[100]){ 请计算 sizeof( str ) = ?
(4) } void *p = malloc( 100 ); 请计算 sizeof ( p ) = ?
(5)
#include<stdio.h>
#include<stdlib.h>
void Foo ( char str[100]);
int main()
{ char str[] = "www.ibegroup.com";
char *p = str ;
int n = 10;
printf("%d\n%d\n%d\n",sizeof(str),sizeof(p),sizeof(n));
Foo(str);
void *qp =(void*) malloc( 100 );
printf("%d", sizeof (qp )); }
void Foo ( char str[100])
{ printf("%d\n", sizeof(str)); }
结果: 17 (字符1个字节一个,17个字符) 4 (指针类型的长度都是4个字节) 4 (int类型4个字节) 4 (传到函数里面的是指针,还是4个字节) 4 (指针,或叫地址就是4个字节)
另:
int p[100];
sizeof(p)=400;
整型数组的大小=数组长度*sizeof(int);
struct node{
char a;
short b;
int c;
} ;
sizeof(node)=8;
char类型默认是1个字节,short默认是2个字节,int默认4个字节。由于系统默认4字节对齐方式,
总的大小必须是4的整数倍,所以为8。(请注意内存空洞问题)
- 32位机下的sizeof()
- sizeof专题(五)数组的sizeof
- SIZEOF()的分析
- sizeof的使用方法(转载)
- sizeof的用法(ZZ)
- 类的sizeof(1)
- 类的sizeof(转载)
- 类的sizeof(二)
- sizeof的使用方法(转载)
- sizeof(CString)的长度
- sizeof的用法(转)
- sizeof 的用法(初学者)
- sizeof 的使用 (初学者);
- <1>sizeof()的实现
- 类的大小(sizeof)
- 32位和64位下的sizeof()
- C/C++中sizeof()的用法——32位和64位下的sizeof()
- C/C++中sizeof()的用法——32位和64位下的sizeof()
- bupt 204 Palindrome
- sqlite 自动编号的实现
- 1369 窗口超级版
- 什么是InnoDB
- 订单商品详情导出EXCEL
- 32位机下的sizeof()
- gdb调试多线程时,信号量自动响应问题
- C++builder升级问题
- opencv中直方图的理解
- 俄罗斯方块游戏设计——不拘一格编程序之二
- Android初级第一讲---Android开发环境的配置
- Windows Live Writer with Wordpress
- 防止IT技术人员被挖走的五大措施
- 百度地图