c - char* 和 const char* 的区别?

标签 c pointers constants

有什么区别

char* name

指向常量字符串字面值,

const char* name

最佳答案

char* 是指向可变 字符/字符串的可变 指针。

const char* 是指向不可变 字符/字符串的可变 指针。您不能更改此指针指向的位置的内容。此外,当您尝试这样做时,编译器需要给出错误消息。出于同样的原因,从 const char *char* 的转换已被弃用。

char* const 是一个不可变指针(它不能指向任何其他位置)但是它指向的位置的内容是可变

const char* const 是指向不可变 字符/字符串的不可变 指针。

关于c - char* 和 const char* 的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9834067/

相关文章:

c - 如何使用curses打印ASCII表

c - #if 宏在 C 中如何工作?

c - 如何在嵌入式Linux中配置IP地址?

c++ - 无法编译 C++ deque.erase() 调用

c - 'const gchar *' 是什么意思,使用后是否需要释放该内存?

c - 尽管 undefined variable 但不增加

c - 通过引用传递流

c - 简单的交换功能...为什么这个不交换?

c++ - 获取指针值

c++ - 避免到处都有静态常量变量