字符串是存储在数组中的有效字符序列,结尾带有\0。即字符串对象是带有\0的字符数组。
一,标准字符
128个,代码为0-127.大写字母65到90。小写字母97到122
char ch='A';
printf(“%c”,ch);
printf("%d",ch);
A
65
二,字符输入输出的标准函数(在stdio中)
getchar()
putchar(int a)
int ch
printf("请输入");
fflush(stdin); //清空缓冲区
ch=getchar()
putchar(ch);
A[Enter]
A
三,数值字符串好数值区别:字面量不同
即末尾多了\0
四,字符串赋值
例子:char str[10]="chinese";
char *p="chinese"
注:第一种可修改其中字符,第二种不行,因为不报错所以最好为const型指针
五,常用函数
- 读取键盘字符串:char *gets(char *s),输入进s中。返回字符串指针。
- 输出字符串:int puts(const char *s),成功返回0。
- 返回字符串长度:int strlen(const char *a)。
- 字符串复制:char* strncpy(char* s1,const char* s2,int n),将s2复制给s1,有int n就指定复制几个字符,没有就是全部。
- 字符串连接:char * strcat(char *s1,const char *s2,int n)类似复制用法。
字符串大小写:①大转小:char* strlwr(char*s),②小转大:char* strupr(char* s)
字符串比较:①全部:int strcmp(const char*s1 ,const char* s2 );相等返回0,大于1小于-1。②部分:int strncmp(const char*s1 ,const char* s2,int n),比较前n个字符,返回同上
字符查找:①查找首先出现的给定字符:const char* strchr(const char* s,int ch):返回该字符指针(所以可能输出个字符串)②查找最后一次出现的:strrchr:其它一样。
字符串匹配:char* strstr(const char* str,const char* substr)从前面里面匹配出后面的。