C语言没有字符串的类型
自己要会编写字符串的各种函数
是以特殊字符数组的形式存储和处理字符串,这种字符串必须以空字符 '\0' 结尾。这类字符串数组称为C风格字符串
必须以空字符 '\0' 结尾
'\0' 为结束符
char *str = "title china is big"; //str是字符串常量的首地址,常量不可以更改
//数组str是一个变量,接收常量“write”的值
char str[10] = "write"; //将字符串常量“write”,赋值给str
//从头到尾开始填充,没有填充到的都赋值为0,0是字符‘\0’
自己要会编写字符串的各种函数
是以特殊字符数组的形式存储和处理字符串,这种字符串必须以空字符 '\0' 结尾。这类字符串数组称为C风格字符串
必须以空字符 '\0' 结尾
'\0' 为结束符
数组元素初始化的时候,如果没有指定后面的元素,一般会默认为0,0 是‘\0’的编号
#include <stdio.h>
#include <stdlib.h>
int main1()
{
char *str = "title China is Great";
char *p = str;
printf("%p\n",p);
while (*str) //结尾是 '\0' ,标号是0
{
putchar(*str);
str++;
}
system("pause");
}
char *str = "title china is big"; //str是字符串常量的首地址,常量不可以更改
//数组str是一个变量,接收常量“write”的值
char str[10] = "write"; //将字符串常量“write”,赋值给str
//从头到尾开始填充,没有填充到的都赋值为0,0是字符‘\0’
scanf函数会将空格,回车,换行,换页符,制表符当做终止符 终止数据输入,
需要用gets函数输入
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//strstr函数 用于判断字符串str2是否是str1的子串。
//如果是,返回str2在str1中首次出现的地址;否则,返回NULL。
//strchr函数 查找字符串s中首次出现字符串c的位置
//如果存在,返回首次出现的地址;否则,返回NULL。
//strncmp函数 比较字符串前n个字符,同strcmp函数类似
//strncat函数 字符串连接函数,将前n个字符串连接到第一个参数的字符串后,返回指向拷贝好后的指针
//atoi函数 将字符串转换成数值,参数为地址,出现非数字字符会转换失败,返回0
//strrev函数 将字符串逆转
//strlen 获取字符串长度
//strupr 小写转大写
//strlwr 大写转小写
//strcpy 字符串拷贝
//strcat 字符串连接函数
//strcmp 对比字符串函数,判读字符串是否相等,可以用于密码的验证
void learn_strcmp()
{
char str2[] = "你好,明天你才是你说的八岁";
char str1[] = "山阴路的夏天";
int num = strcmp(str1, str2);
//字符串相等返回0,比较大返回1,比较小返回-1
printf("%d\n",num);
}
void main()
{
learn_strcmp();
system("pause");
}