字符串常量在编译时系统给定存储位置,可以赋值给字符指针;此时可以通过下标进行访问,但不可以通过下标修改字符串的值。
字符指针指向字符数组时可以修改字符串的值。
#include <stdio.h> #include <string.h> int main() { char a[26]; char *b = "abc"; //定义时初始化 b="123"; //可以被重新赋值 //b[1] = ‘v‘; //不可以被修改 a[1] = b[1]; //可以通过下标读取 strcpy(a, "catdog"); strcat(a, "!"); b = a; //指向字符数组 b[0] = ‘x‘; //可以被修改 b[1] = "x"; //实际上将字符常量"x"的地址付给b[1],字符串将出现乱码 printf("%s\n", a); system("pause"); return 0; }
原文地址:https://www.cnblogs.com/imhuanxi/p/11610013.html
时间: 2024-12-12 10:49:26