C语言, const char 和char const用法示例代码
时间: 2023-09-28 15:05:35 浏览: 179
const——C语言中的常量的const char.c
下面是`const char`和`char const`的用法示例代码:
```c
// 示例1:const char
void printString(const char* str) {
// str指向的字符常量是不可变的
printf("%s", str);
}
int main() {
char str[] = "hello world";
printString(str); // 正确,str指向的字符常量是不可变的
str[0] = 'H'; // 错误,试图修改str指向的字符常量
return 0;
}
```
```c
// 示例2:char const
void printString(char const* str) {
// str指针本身是不可变的,指向的字符常量也是不可变的
printf("%s", str);
}
int main() {
char str[] = "hello world";
char const* p = str; // 正确,p是一个指向常量的指针
printString(p); // 正确,p指向的字符常量是不可变的
p[0] = 'H'; // 错误,试图修改p指向的字符常量
p = "Hello World"; // 正确,p指向的字符常量是不可变的,但p本身是可变的
return 0;
}
```
注意,由于`const`的限制,指针所指向的字符常量是不可变的,但如果指针本身是可变的,我们可以通过改变指针所指向的常量来修改字符常量的值。
阅读全文