数组与指针的sizeof大小
2016-04-16 16:30
267 查看
1.sizeof定义sizeof运算符,以字节为单位给出数据大小strlen()函数,以字符为单位给出字符串长度sizeof(int)求类型大小,必须带括号sizeof(b=a+2)其中表达式不计算sizeof(a)求变量大小2.sizeof与数组int a[] = { 1, 2, 3, 4 }; printf("%d\n", sizeof(a));//16 一个整形四个字节,四个元素 printf("%d\n", sizeof(a + 0));//4 表示指针 printf("%d\n", sizeof(*a));//4 a首元素地址,*a解引用首元素大小 printf("%d\n", sizeof(a + 1));//4 a首元素地址加1还是地址 printf("%d\n", sizeof(a[1]));//4数组第二个元素 printf("%d\n", sizeof(&a));//4 整个数组地址 vc中是16 错误 printf("%d\n", sizeof(&a + 1));//4 指向下一个数组的地址 printf("%d\n", sizeof(&a[0]));//4首元素地址 printf("%d\n", sizeof(&a[0] + 1));//4第二个元素2的地址 printf("%d\n", sizeof(*&a));//16 &a[b]整个数组地址 [b]解引用为整个数组大小[/b][/b] char name[] = "abcdef"; printf("%d\n", sizeof(name[0]));//1首元素大小 printf("%d\n", sizeof(&name));//4取地址数组名是地址 printf("%d\n", sizeof(*name));//1 name数组首元素地址,解引用数组第一个元素大小 printf("%d\n", sizeof(&name+1));//4指向下一个数组的地址 printf("%d\n", sizeof(name+1));//4 b的地址 printf("%d\n", sizeof(name));//7 数组总大小 printf("%d\n", strlen(name));//6 字符串长度 printf("%d\n", strlen(&name));//6 取地址数组名和数组名是同一值字符串长度 printf("%d\n", strlen(&name + 1));//X随机值 下一个数组的长度 printf("%d\n", strlen(name + 1));//5 第二个元素以后的字符串长度 3.sizeof和指针char *name = "abcdef"; printf("%d\n", sizeof(name[0]));//1首元素大小 相当于 *(name+0) printf("%d\n", sizeof(&name));//4 指针变量地址是地址 printf("%d\n", sizeof(*name));//1 首元素大小 printf("%d\n", sizeof(&name+1));//4 指针变量地址 加一跳过指向下一个地址 printf("%d\n", sizeof(name+1));//4 b的地址 printf("%d\n", sizeof(name));//7 name是指针变量 printf("%d\n", strlen(name));//6 字符串长度 printf("%d\n", strlen(&name));//随机值 name变量地址 printf("%d\n", strlen(&name + 1));//随机值 name变量地址 加一跳过指向下一个name变量地址 printf("%d\n", strlen(name + 1));//5 第二个元素以后的字符串长度
相关文章推荐
- 【Redis源码剖析】 - Redis数据类型之列表List
- PullToRefresh使用详解--构建下拉刷新的listView
- Launcher3源码浅析(5.1)--Workspace
- iOS学习笔记30-系统服务(三)蓝牙
- 微信分享图片变黑
- java如何连接数据库Mysql
- python3.4连接和读取oracle数据表
- 进程和线程的区别
- 使用ScrollView属性fillViewport解决android布局不能撑满全屏的问题
- Jersey(1.19.1) - Sub-resources
- iOS学习笔记30-系统服务(三)蓝牙
- 超级服务netd和xinetd
- android获取网络图片的用法 BitmapFactory.decodeByteArray 返回null
- Mysql主从复制
- nyoj 18The Triangle
- 2089 不要62 数位dp-1
- 解决ScrollView嵌套RecycleView高度不适配问题
- Apacche与Nginx优缺点比较
- nginx配置性能优化
- hashmap造成死循环