char *n="hello"和char a[]="hello"的区别:
1. 变量n位于栈上,其内容是一个地址,指向位于文字常量区的“hello”,此时“hello”在内存中只有一份拷贝;
2. a是一个位于栈上的有6个元素(含字符串末尾的空字符)的数组,并将“hello”拷贝到它所占的内存中,此时“hello”有两份拷贝。
char *n="hello"和char a[]="hello"的区别:
1. 变量n位于栈上,其内容是一个地址,指向位于文字常量区的“hello”,此时“hello”在内存中只有一份拷贝;
2. a是一个位于栈上的有6个元素(含字符串末尾的空字符)的数组,并将“hello”拷贝到它所占的内存中,此时“hello”有两份拷贝。