微建站官网,wordpress切换语言 语言包,怎么做网站首页弹幕,南昌建设公司网站#x1f4dd;前言#xff1a; 这篇文章对我最近学习的有关字符串的函数做一个总结和整理#xff0c;主要讲解字符函数和字符串函数#xff08;strlen#xff0c;strcpy和strncpy#xff0c;strcat和strncat#xff09;的使用方法#xff0c;使用场景和一些注意事项前言 这篇文章对我最近学习的有关字符串的函数做一个总结和整理主要讲解字符函数和字符串函数strlenstrcpy和strncpystrcat和strncat的使用方法使用场景和一些注意事项附上实例 个人简介努力学习ing 个人专栏C语言入门基础 CSDN主页 愚润求学 每日鸡汤生活在自己的光里不断吹饮内心的火焰 文章目录 一字符分类函数1使用实例islower 二字符转换函数三函数strlen1基本介绍2使用注意事项 四strcpy和strncpy1strcpy2strncpy 五strcat和strncat1strcat2strncat 一字符分类函数
C语言里提供一系列的函数专门用于字符分类便于我们**判断一个字符是属于什么类型的字符** 如islower int islower(int c) islower就会判断参数部分的c是否是小写字母字符→ASCII值 1使用实例islower
●这些函数的使用方法非常类似一下对其中的islower做使用的展示
代码作用用islower判断字符后将小写的字母转换为大写其他字符不变
#includestdio.h
#includectype.h
int main()
{char str[] Test Islower.;int sz sizeof(str) / sizeof(str[0]);for (int i 0; i sz; i) //用for循环因为一次只能判断一个字符{if (islower(str[i])) //判断是否为小写小写就加入if语句{str[i] str[i] - 32; //将小写转换为大写}putchar(str[i]); //输出字符}return 0;
}输出结果 二字符转换函数
下面介绍两种可以实现大小写之间互相转化的函数 1int tolower(int c); 将大写字母转换为小写字母 2int toupper(int c); 将小写字母转换为大写字母 在上一个用islower判断大小写后我们是通过小写字符-32的形式来转化为大写字符的这次我们使用toupper函数来实现转换
#includestdio.h
#includectype.h
int main()
{char str[] Test Islower.;int sz sizeof(str) / sizeof(str[0]);for (int i 0; i sz; i){if (islower(str[i])) {toupper(str[i]); //使用toupper函数}putchar(str[i]); }return 0;
}输出结果 三函数strlen
用来计算字符串的长度
1基本介绍
我们来看一下C语言官网对它的介绍
●原文C字符串的长度是由终止空字符决定C字符串的长度等于字符串开头和终止字符之间的字符数但不包括终止字符本身 ●通俗来讲就是字符串开头到\0之前字符的个数
2使用注意事项
但是这也造成了strlen的“固执”strlen只有遇到\0才会停止查找否则就会一直查找
请看下面的代码
#includestdio.h
#includestring.h
int main()
{char arr1[] abcde;char arr2[] { a,b,c,d,e};printf(%d\n, strlen(arr1));printf(%d\n, strlen(arr2));return 0;
}运行结果 ⭐结果不一样就是因为strlen在arr2的未知位置才找到了\0 arr1数组中存放的是a b c d e \0程序自动在字符串后面补充了\0 arr2数组中存放的是a b c d e 没有\0因此strlen会一直找\0找到才停止输出结果 33 其实是一个随机值刚好strlen在内存里找到了\0 四strcpy和strncpy
头文件string.h 作用复制字符串
1strcpy
我们先来看strcmp 函数原型char* strcpy(char* destination, const char* source); ●对重要的内容解读一下与数理 1原字符串必须以\0结尾函数复制完\0以后就会停止 2目标空间要足够大要存放的下所要复制的字符串 3目标空间必须可修改比如字符数组可以修改但是常量字符串就是不能修改的
实例
但是如果源字符里有\0则复制完\0就会停止
2strncpy
和strcpy的区别就是多了一个n→num复制的字符的个数 char* strncpy(char* destination, const char* source, size_t num); ●复制num个字符从源字符串到目标空间 ●如果num源字符串长度则复制完源字符串后目标后面追加0直到num个 可以观察到 num的限制就是刚好复制num个字符并且没有更改目标空间原来后面的内容
五strcat和strncat
头文件string.h 作用连接字符串
1strcat ⭐提炼一下 ●源字符串必须以\0结尾函数追加完\0以后就会停止 ●从目标中的终止空字符串开始覆盖目标字符串也必须以\0结尾因为目标字符串的\0就是开始追加的位置这个\0会被覆盖掉 ●目标空间要足够大目标字符串源字符串的大小 ●目标空间必须可以修改
实例 可见源字符串中间有空字符也不会停止
2strncat ⭐区别 ●从源字符串追加num个字符到目标字符串的末尾追加完以后再追加一个\0 ●如果num源字符串长度,则只会将源字符串中\0之前的内容追加到目标字符串的末尾**
实例 我的分享也就到此结束啦 要是我的分享也能对你的学习起到帮助那简直是太酷啦 若有不足还请大家多多指正我们一起学习交流 公主王子点赞→收藏⭐→关注 感谢大家的观看和支持祝大家都能得偿所愿天天开心