关于sizeof(str)的问题
来源:互联网 发布:短网址源码 编辑:程序博客网 时间:2024/05/29 10:29
#include<stdio.h>
main()
{
char str[]="hello"
char *p=str;
int a,b;
a=sizeof(str);
b=sizeof(p);
}
那么
a = 6
main()
{
char str[]="hello"
char *p=str;
int a,b;
a=sizeof(str);
b=sizeof(p);
}
那么
a = 6
b = 4
因为p是一指针,32位下的所有指针都是4字节,sizeof(p)为4而不是6俗称数组退化为指针,因为sizeof是个静态操作符,编译时期就可以确定值,而固定的数组的长度在编译期间也是确定了的,所以sizeof(str)能给出6,但p是个指针,在编译期间,sizeof不知道p指向一个数组,还是仅指向一个元素,所以其指向位置的数组大小是确定不了的,所以给出sizeof(p) = 4,和sizeof(int),sizeof(double)是一个道理。
0 0
- 关于sizeof(str)的问题
- 关于sizeof的问题
- 关于sizeof的最大值问题
- 关于sizeof的细节问题
- 关于sizeof的误用问题
- 关于sizeof的相关问题
- 关于sizeof注意的问题
- 关于const_cast(str.c_str())的使用问题
- // 比较 strlen(str)和 sizeof(str)的不同
- // 比较 strlen(str)和 sizeof(str)的不同 2
- sizeof() 、strlen()、str.length的区分
- struct 关于sizeof的大小问题
- sizeof(struct)--关于字节对齐的问题
- QQ群里问的关于sizeof问题
- 关于求sizeof(struct)“不正确”的问题
- 关于struct调用sizeof的一个问题
- 关于sizeof的问题(1)
- 关于sizeof的问题(3)
- BZOJ_P4128 Matrix(矩阵乘法+快速幂+BSGS)
- 梆梆SDKs详细分析-防界面劫持SDK
- MySQL 存储引擎
- c 文本文件拷贝
- FMDB数据库总结
- 关于sizeof(str)的问题
- asp.net利用Ajax和Jquery在前台向后台传参数并返回值,通过aspx.cs中的静态方法+WebMethod进行处理
- MTU 巨帧 TCP/UDP与分片
- 【Unity插件】NGUI核心组件之UIAnchor
- ubuntu下samba 安装与配置
- Python - 批量更改文件名
- 关于移动购物应用中的购物车效果的实现
- iOS,Android网络抓包教程之tcpdump
- 好的网址