字符串数组

字符串数组

char* s1 = "Hello world";
char s2[] = "Hello world";
s1[2] = 'E';     // 1
s2[2] = 'E';     // 2
*(s1 + 2) = 'E';  // 3
*(s2 + 2) = 'E';  // 4

上述1、3都是错误的,在c语言中的内存模型,char *s1 = "hello,world",在内存中s1指针变量存储在栈区,而“hello,world”存储在常量区,常量是不能被改变的

形参数组

形参数的数组被当作指针来处理,所以用sizeof处理是不恰当的。
sizeof只能用来处理静态数组的大小。

posted @ 2016-08-29 19:25  弦断  阅读(151)  评论(0编辑  收藏  举报