定义:在一个双引号“ ”内的字符序列或者转义字符序列称为字符串常量
例如:“HI HI!” “a” “\n\t”
这些字符串常量是不能改变的,如果试图改变指针所指向的内容是错误的
因为字符串常量是存在静态内存区的,不可以改变
字符串变量,在c语言中没有纯粹的c语言字符串变量,可以通过一个字符数组来体现,这样就
可以对字符数组中的内容进行改变!
附一段代码,该代码将字符串进行分割:
#include<string.h> #include<stdio.h> #include<stdlib.h> static char* re; static char* sp_strsep(char **s, const char *del) { char *d, *tok; if (!s || !*s) return NULL; tok = *s; d = strstr(tok, del); if (d) { *s = d + strlen(del); *d = '\0'; } else { *s = NULL; } return tok; } int main() { char *ss="chenwenshi"; const char *dd="wen"; re=sp_strsep(&ss,dd); printf("ss=%s,dd=%s\n",ss,dd); printf("%s\n",re); return 0; }