阿里云网站备案后,ui培训学校哪家好,以企业介绍为主做外贸网站好吗,网页设计代码设计的代码有哪些1、字符串概念 字符串用来存储一组字符#xff0c;因此需要字符数组来存。 C语言中字符串的表示 C语言里面字符串只能用字符数组来存 字符串要求这个数组的末尾必须至少有一个\0 char ch1[] {a,b,c}; // 不是字符串 char ch2[5] {h,e,l,l,o}; // 不是字符串 char…1、字符串概念 字符串用来存储一组字符因此需要字符数组来存。 C语言中字符串的表示 C语言里面字符串只能用字符数组来存 字符串要求这个数组的末尾必须至少有一个\0 char ch1[] {a,b,c}; // 不是字符串 char ch2[5] {h,e,l,l,o}; // 不是字符串 char ch2[6] {h,e,l,l,o}; // {h,e,l,l,o,\0} 字符串 char ch2[10] {h,e,l,l,o}; // {h,e,l,l,o,\0,\0,\0,\0,\0} 字符串 简化成的形式 char ch2[] hello; // {h,e,l,l,o,\0} 例 char ch2[10] {h,e,l,l,o}; sizeof(ch2)___10____ (sizeof求空间所占字节数) char ch3[] hello; sizeof(ch3)____6_____ (sizeof求空间所占字节数) 2、字符串专门格式控制符%s 输入 -- 一串字符 --- %s需要字符串的某个字符地址从给定的地址开始接收一个字符放到char型空间去直到遇到空格 或者 回车 结束 输出 -- 一串字符 --- %s需要字符串的某个字符地址从给定的地址开始读一个char字符输出读一个输出读到\0
char str[20];printf(请输入一个字符串);scanf(%s,str); // scanf(%s,str[0]);printf(输入的字符串是%s\n,str); 3、多个字符串存储 存储一个同学的姓名 一个字符串 --- 一维数组既可以了 char name[20]; 存储一个班级同学的姓名加入班级有5为同学 5个字符串 --- 二维数组 char names[5][20]; 例 char names[5][20] {lili,tom,xiaoming,xiaoli,xiaomei};int i;
for(i0;i5;i)
{printf(%s\n,names[i]);
}
4、字符串处理函数 因为字符串需要使用数组存储所以字符串名称是一个数组名不能直接进行比较或者 复制操作因此C语言为了方便我们操作在string.h头文件里面提供了很多常用的字符串处理函数帮助我们快速实现字符串的相关操作具体可以参考C/C函数大全。 库函数学习重点关注 函数功能是什么 功能怎么用 思考函数如何完成这个功能 4.1、strlen 功能求字符串长度不包含\0 语法 #include string.h size_t strlen( char *str ); 使用
#includestdio.h
#includestring.hint main(void)
{char str[20];printf(请输入字符串);scanf(%s,str);int len;len strlen(str);printf(%d\n,len);int len1;len1 strlen(str[2]);printf(%d\n,len1);return 0;
} sizeof 任意空间所占字节数 strlen 字符串 -- 从给定的地址计数知道遇到\0 --- 统计这个过程中字符的个数 实现思路 从给定的地址开始查找找到一个非\0字符就技术直到遇到\0字符结束计数并把技术结果返回。 4.2、strcat 功能字符串拼接 语法 #include string.h char *strcat( char *str1, const char *str2 ); 使用
char s1[30] hello;
char s2[10] world;// 想把s2拼接到s1的后面
strcat(s1,s2); printf(%s,s1); 实现思路 先找到第一个字符串末尾 \0 依次将第二个字符串的字符拷贝到第一个字符串的位置 拷贝结束补\0 4.3、strcpy 功能拷贝字符串 语法 #include string.h char *strcpy( char *str1, const char *str2 ); 使用
#includestdio.h
#includestring.hint main(void)
{char s1[10] hello; char s2[10] hihihhi;strcpy(s2,s1);printf(%s,s2);printf(%c,s2[6]);return 0;
} 实现思路 依次将第二个字符串的字符拷贝到第一个字符串str1指向的位置 拷贝结束补\0 4.4、strcmp 功能比较字符串大小 语法 #include string.h int strcmp( const char *str1, const char *str2 ); 使用
#includestdio.h
#includestring.hint main(void)
{char pwd[20];printf(请输入密码);scanf(%s,pwd);int res;res strcmp(pwd,123456);if(res 0){printf(登录成功);}else{printf(登录失败);}return 0;
} 实现思路 长度一样对应下标上的字符也要一样,两个字符串相等返回0否则就是不相等。 找到两个字符串的对应位置0下标和0下标比较1下标和1下标比较知道遇到不一样的返回非如果对比了所有都一样一起遇到\0就代表字符出啊你一样返回0。