我们可以使用 2 种方法存储字符串。
方法一:使用数组
char a[]="str";
方法二:
char *b="str";
在方法 1 中,内存仅用于存储字符串“str”,因此使用的内存为 4 个字节。
在方法 2 中,内存用于将字符串“str”存储在“Read-Only-Memory”上,然后用于存储指向字符串第一个字符的指针。所以使用的内存必须是 4 个字节用于在 ROM 中存储字符串,然后 8 个字节用于存储指向第一个字符的指针(在 64 位机器中)。
第一种方法总共使用 4 个字节,方法 2 使用 12 个字节。在 C/C++ 中存储字符串时,方法 1 总是比方法 2 更好。