| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> C++知识库 -> C语言 字符函数和字符串函数 -> 正文阅读 |
|
[C++知识库]C语言 字符函数和字符串函数 |
C语言本本身没有字符串类型,但是在C语言中,对字符串的操作很频繁。在C语言中,字符串通常在字符数组中或常量字符串当中。下面。我们来介绍一些字符串常用的函数。 一,字符类对于字符,经常遇到的是判断某个字符是不是小写,判断某个字符是不是大写,判断某个字符是不是数字,以及把小写字母转大写,大写字母转小写。 1,isdigit函数isdigit函数是用来判断是不是十进制0~9,头文件是ctype.h。如果是,返回0。
2,islower函数 && isupper函数 &&?isalpha 函数 && isalnum 函数islower函数是用来判断是不是小写字母a~z。头文件是ctype.h。如果是,返回非零的数。 isupper函数是用来判断是不是大写字母a~z。头文件是ctype.h。如果是,返回非零的数。 isalpha函数是用来判断是不是字母a~z,A~Z。头文件是ctype.h。如果是,返回非零的数。 isalnum函数是用来判断是不是字母和数字。头文件是ctype.h。如果是,返回非零的数。
3,tolower 函数 &&?toupper 函数tolower函数是将大写字母转换成小写字母。头文件是ctype.h。 toupper函数是将小写字母转换成大写字母。头文件是ctype.h。
二、字符串类字符串类函数头文件均为string.h。 1,strlen 函数strlen函数用来求字符串的长度。
字符串是以?'\0' 作为结束标志,strlen函数返回的是在字符串中 '\0' 前面出现的字符个数(不包含 '\0' )。 参数指向的字符串必须要以 '\0' 结束。 注意函数的返回值为size_t,是无符号的(易错)。
2,strcpy函数 && strncpy函数strcpy函数用来进行字符串的拷贝。 strncpy函数和它的区别是该函数可以按照指定的长度进行拷贝。
源字符串必须以 '\0' 结束。 这个函数会将源字符串中的 '\0' 拷贝到目标空间。 目标空间必须足够大,以确保能存放源字符串。 目标空间必须可变。?
3,strcat函数 && strncat 函数strcat函数用来进行字符串的连接。 strncat函数可以按照指定的连接。
源字符串必须以 '\0' 结束。 这个函数会将源字符串中的 '\0' 拷贝到目标空间。 目标空间必须足够大,以确保能存放源字符串。 目标空间必须可变。?
4,strcmp 函数 && strncmp函数strcmp函数用来进行字符串的比较。 strncmp函数是比较到出现另个字符不一样或者一个字符串结束或者num个字符全部比较完。
标准规定: ????????第一个字符串大于第二个字符串,则返回大于0的数字 ????????第一个字符串等于第二个字符串,则返回0 第一个字符串小于 ????????第二个字符串,则返回小于0的数字 这种比较不是比较字符串的长度,而是字符串的每一个字母的ASCII码值。
如果是比较长度,则返回的应该是大于0的数,结果是小于0的数,这就说明了这个函数不是比较字符串的长度的,而是ASCII码值。a的ASCII码值是97,b是98,所以结果是-1;
5,strstr函数strstr函数是用来判断主串中是否存在字串(字符串的匹配)。如果匹配成功,指向字符串中第一次出现位置的指针。如果是空的子串,返回这个主串,否则返回NULL。
6,strtok函数strtok函数是按照某些分隔符进行字符串的分割。
????????sep参数是个字符串,定义了用作分隔符的字符集合。第一个参数指定一个字符串,它包含了0个或者多个由sep字符串中一个或者多个分隔符分割的标记。 strtok函数找到str中的下一个标记,并将其用 \0 结尾,返回一个指向这个标记的指针。(注: strtok函数会改变被操作的字符串,所以在使用strtok函数切分的字符串一般都是临时拷贝的内容并且可修改。) ????????如果strtok函数的第一个参数不为 NULL ,函数将找到str中第一个标记,strtok函数将保存它在字符串中的位置。 strtok函数的第一个参数为 NULL ,函数将在同一个字符串中被保存的位置开始,查找下一个标记。 如果字符串中不存在更多的标记,则返回 NULL 指针。简单来说,比如:123@456#,第一次这个函数分割开123后,就保留了这个字符串的123后面的地址,同时,123置为空。下一次就是从NULL开始,在分割456后,在进行类似的操作,直到分割完,就返回NULL。
?7,strerror 函数(了解)返回错误码,所对应的错误信息。头文件是 errno.h。
?三、其他类型以上的函数只对字符串有效。如果int等类型想要进行比如拷贝,连接的操作,有没有针对它们的函数呢?答案是有的。这些函数被称为内存函数。只要是在内存当中,就可以进行操作。下面我们介绍3个内存操作函数,分别用来进行拷贝,可以重叠的拷贝和比较。要注意的是,这些函数的参数中,num的单位是字节。 1,memcpy 函数
函数memcpy从source的位置开始向后复制num个字节的数据到destination的内存位置,这个函数在遇到 '\0' 的时候并不会停下来。
2,memmove 函数
和memcpy的差别就是memmove函数处理的源内存块和目标内存块是可以重叠的。 如果源空间和目标空间出现重叠,就得使用memmove函数处理。
3,memcmp 函数
返回值和strcmp函数相同。
? ? |
|
C++知识库 最新文章 |
【C++】友元、嵌套类、异常、RTTI、类型转换 |
通讯录的思路与实现(C语言) |
C++PrimerPlus 第七章 函数-C++的编程模块( |
Problem C: 算法9-9~9-12:平衡二叉树的基本 |
MSVC C++ UTF-8编程 |
C++进阶 多态原理 |
简单string类c++实现 |
我的年度总结 |
【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
c语言常见错误合集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 10:43:39- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |