C语言char s[] 和 char *s的差别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言char s[] 和 char *s的差别相关的知识,希望对你有一定的参考价值。

C语言char s[] 和 char *s的差别,以下这个回答解说的非常清晰。

The difference here is that

char *s = "Hello world";

will place Hello world in the read-only parts of the memory and making s a pointer to that, making any writing operation on this memory illegal. While doing:

char s[] = "Hello world";

puts the literal string in read-only memory and copies the string to newly allocated memory on the stack. Thus making

s[0] = ‘J‘;
legal.

来自  http://stackoverflow.com/questions/1704407/what-is-the-difference-between-char-s-and-char-s-in-c

以上是关于C语言char s[] 和 char *s的差别的主要内容,如果未能解决你的问题,请参考以下文章

c语言中int转char

一个char阵列 放入一堆数字,输出用啥?%s,还是%d , 还是%c?

C语言 写一个把一个字符串分成若干个数组

char[]数组该如何赋值

c++ 如何把一个int转为char*

C语言 函数调用 类型转换