指针和数组名及字符串的区别
来源:互联网 发布:淘宝电视机价格 编辑:程序博客网 时间:2024/06/05 17:07
学习嵌入式技术有一段时间了,对于C语言容易混淆不清楚的地方自己做了一下总结:
指针和数组名:
指针和数组名是大家争论焦点,各种各样的说法。有人说数组名就是指针(常指针),有人说数组和指针不是一个概念:
这里不谈原理和概念:自己总了他们在用法上的不同和相同:
例子: int a[10]; int * b;
不同:1、sizeof()不同
sizeof(a)为整个数组的内存,sizeof(b)为指针的内存一般是4字节;
2、&a 和 b的指针运算不同
理解为 int * a[10]和int (*a)[10]的区别
相同:1、角标运算相同
如果b=&a[0] 那么a[5]的值完全和b[5]相同
2、作为形参形同
function(int * num)中function(a)和function(b)一样
字符串和数组
1、字符串被编译器处理为指向char 的指针
char *a; a="qewre";相当一次复制 “qwere”相当于一个指向char的指针
2、char str[] ="xxxx",特殊!是数组初始化的简略形式;
3、char *a="xxx" 和char b[]={''x','x','x'};不一样的地方在于 系统会给a自动加上结束符而b没有结束符,如果需要划定界限自己添加结束符。
简答来体现:strlen(a)和strlen(b)不一样;
0 1
- 指针和数组名及字符串的区别
- 字符数组名与字符串指针变量名的区别
- 数组名和指针的区别
- 数组名和指针的区别
- 数组名和指针的区别
- 数组名和指针的区别
- 数组名和指针的区别
- 数组名和指针的区别
- 指针和数组名的区别
- (转)数组名和指针的区别
- 指针和数组名的区别
- 数组名和指针的区别
- 数组名和指针的区别
- 指针和数组名的区别
- 数组名和指针的区别
- 指针和数组名的区别
- 数组名和指针的区别 sizeof
- 数组名和指针的区别
- Linux基础备忘_08: LTP(Linux test project)
- DirectX 配置 vs2013 Win10 64bit
- api 公钥私钥的一点看法
- ViewPager的PagerAdapter的封装
- 现代企业该清楚的商业智能分析解决方案
- 指针和数组名及字符串的区别
- 面试机试之奖励问题
- kali渗透metasploitable靶机
- 使用matlab对训练样本图像降维,并对测试图像使用变换矩阵降维并重构
- MTK SmartPhone Record-(1)
- swift修改UITextfield的Placeholder字体大小和颜色
- Ucenter通信失败(终极解决)
- 一些很不错的Android开发技巧
- Trump 是一个通过数据库自动发现生成 RESTful 风格接口的框架。