char *s1 = "hello"和char s2[]="world"的区别
2012-10-05 15:28
393 查看
转自:http://zhidao.baidu.com/question/65483282.html
两者的区别悬殊! char *s1="hello"这个是一个字符串常量,你可以像一个字符数组一样使用它,但是你不能更改这个字符串的值比如 s1[2]='e'这样不行,s1 放在全局数据区。 char s2[]="world";是一个字符串变量,可以被修改,s2 是函数的栈空间区域,函数执行完成,这个空间就没了。
这两者再作函数的形参的时候是完全等价的。 void function(char *s1); void function(char s1[]); 可以相当绝对的说这两种完全等价,没有任何区别。
相关文章推荐
- char str[] = "hello world";和char *str = "hello world";区别
- char p[] = "hello world" 与 char *p = "Hello world" 的区别
- “Hello, world" 粗略比较 C语言和Objective-C的区别
- char *s1 = "***"和char s2[]="***"的区别
- char str[] = "hello world";和char *str = "hello world";区别
- PacMan开发-Win32的"HelloWorld"&MyRegisterClass()函数
- 初学Android,"Hello World" 第一个Android程序(一)
- 执行Groovy,用Groovy写"Hello World"(4)
- RPC Fault faultString="Cannot invoke method 'helloWorld'." faultCode="Server.ResourceUnavailable" fa
- nano-X 的 " hello world " (已经验证)
- 第一个Android程序"Hello,World"
- <script type="text/javascript">alert("hello world");</script>
- puts "Hello world" in VC++
- "Hello World " —— 深入理解程序从编译到执行
- "hello,world!"win32汇编小程序
- algrothm_String s = "Hello";s = s + " world!"(内容?)
- Django 通过网页输出''Hello World"
- "hello world" of MPI version
- OpenCL:"Hello world"矢量加。
- (void)printf("hello world"); int a=2; void(a);中的(void)有什么用?