char *与char[]的区别
来源:互联网 发布:自动制作视频软件 编辑:程序博客网 时间:2024/06/05 11:39
下列代码:
char *str1 = "hfut";char *str2 = "hfut";char str3[] = "new";char str4[] = "new";
str1和str2实际上指向的是同一个内存区域,因为"hfut"被编译器是视为常量,存放在常量区了。
而,
str3和str4指向的不是同一个内存去也,它实际上是在栈上开辟一个数组,然后把常量区的"new"复制到其中。
由此可知他们之间有很大的不同,虽然有那么点形似。
ps.上述,可以写str3[i]='s';但是不能写str1[i]='s';,原因也是上述的解释。
- char[] 与 char* 的区别
- char[] 与 char* 的区别
- char * 与 char[]的区别
- char *与char []的区别
- char *与 &char的区别
- char*与char[]的区别
- char[]与char*的区别
- char * 与char[]的区别
- char *与char[]的区别
- char[] 与char*的区别
- char[] 与char*的区别
- char * 与char []的区别
- *(char**) 与 (char*) 的区别
- char * 与 char[] 的区别
- char* 与 char[] 的区别
- const char *|char const char * 与char * const 的区别
- char[] 与 char *区别
- char * 与 char[] 区别
- jdbc 连接 mysql 时的中文乱码问题
- iOS 部分问题总结2 - 苹果审核篇
- boost高并发网络框架+线程池
- zoj - 3645 - BiliBili(线性方程组)
- debian smba 服务配置
- char *与char[]的区别
- Eclipse快捷键大全
- posix多线程有感--线程高级编程(线程堆栈)
- PS 宋体 12号 有锯齿 的问题
- ubuntu硬件信息,内存DDR详细信息
- 如何夸奖他人
- 卸载MATLAB 7.0
- 第六章 面向对象的程序设计 JavaScript高级程序设计
- 愿青春不朽!!!