在C语言中,字符串有多种操作与处理方法。话不多说,下面就整理一下C语言中字符串的使用整理。

1.头文件

字符串的头文件:

#include<cstring>

2.输入

通常,字符串有多种输入方式。在这里,引用另外一个很有用的博客供大家参考——https://blog.csdn.net/czh1075208140/article/details/79698441。

3.字符串处理函数

(1)求字符串长度函数strlen(字符数组)

strlen是英文STRing LENgth的缩写,该函数的实参可以是字符数组名,也可以是字符串。其功能是求字符串的长度,即字符串中包含的有效字符的个数(不包括字符'\0')。

(2)字符串复制函数strcpy(字符数组1,字符数组2)

strcpy是英文STRing CoPY的缩写,该函数的功能是将字符数组2中的字符串复制到字符数组1中去。

事实上,strcpy也可以用自定义的方法,代码如下:

void strcpy(char s1[], char s2[])
{
int i=;
while(s2[i]!='\0')
s1[i]=s2[i++];
s1[i]='\0';
}

(3)字符串连接函数strcat(字符数组1,字符数组2)

strcat是英文STRing conCATenate的缩写,该函数的功能是把字符数组2中的字符串连接到字符数组1中的字符串的后面,对字符数组2中的内容没有影响。

(4)字符串比较函数strcmp(字符数组1,字符数组2)

strcmp是英文STRing CoMPare的缩写,该函数的两个实参可以是字符数组名,也可以是字符串。其功能是用来比较两个字符串是否相等。从两个字符串的第一个字符开始自左至右逐个字符进行比较,这种比较是按字符的ASCII码值的大小进行的,到出现两个不同的字符或遇到字符串的结束标志'\0'为止。如果两个字符串中的字符均相同,则两个字符串相等,函数返回值为0;当两个字符串不同时,则以自左至右出现的第一个不同字符的比较结果作为两个字符串的比较结果。如果第一个字符串大于第二个字符串,则返回值为1.如果第一个字符串小于第二个字符串,则返回值为-1。

4.应用举例

找出三个字符串中最小者。

#include<iostream>
using namespace std;
#include<cstring>
int main()
{
char string[];
char str[][];
cout<<"请输入三个字符串:\n";
for(int i=; i<; i++)
cin.getline(str[i], );
if (strcmp(str[], str[])<)
strcpy(string, str[]);
else
strcpy(string, str[]);
if(strcmp(str[], string)<)
strcpy(string, str[]);
cout<<"最小的字符串为:"<<string<<endl;
return ;
}

运行结果如下:

请输入三个字符串:
China<Enter>
America<Enter>
Japan<Enter>
最小的字符串为:America

以上就是本次分享的C语言字符串的使用整理。

C/C++字符串使用整理的更多相关文章

  1. Lua字符串库(整理)

    Lua字符串库小集 1. 基础字符串函数:    字符串库中有一些函数非常简单,如:    1). string.len(s) 返回字符串s的长度:    2). string.rep(s,n) 返回 ...

  2. Char型和string型字符串比较整理

    1.赋值 char赋值: char ch1[] = "give me"; char ch2[] = "a cup"; strcpy(ch1,ch2); cout ...

  3. vim 字符串替换整理

    公司项目测试,要在vi编辑其中进行多路径修改,这时候用到了字符串替换的知识,在这里我自己整理了一下. 一.基本内容替换,无特殊符号 :s/old/new/  替换当前行第一个 old 为 new   ...

  4. C和C++字符串处理整理

    在刷leetcode题目的过程中,发现自己对于c和c++字符串的处理并不是很拿手,处理起来比较费劲,而且,算法题似乎很中意字符串的处理,有很多题目都涉及到它.字符串处理比较基础,但是很重要,因此,整理 ...

  5. [IOS 开发] NSDateFormatter的格式字符串 -- 《整理的笔记》

    在ios开发中, OBjective-C中的NSDate是一个挺讨厌的类型, 自己找不到转换成字符串的类型,还得带一个NSDateFormatter的类型. 官方文档上对NSDateFormatter ...

  6. 工作中用到的oracle字符串分割整理

    oracle部分: 定义类型(用于字符串分割): create or replace TYPE "STR_SPLIT" IS TABLE OF VARCHAR2 (4000); 字 ...

  7. ACM 字符串 题目整理

    AC自动机 UVa 11468  Substring AC自动机+概率DP. 注意要补全不存在的边. 为什么要补全不存在的边呢?补全以后可以直接找到状态的转移,即从所有子节点就可以实现所有状态转移. ...

  8. PHP 常用字符串函数整理

    PHP语言中的字符串函数也是一个比较易懂的知识.今天我们就为大家总结了将近12种PHP字符串函数,希望对又需要的朋友有所帮助,增加读者朋友的PHP知识库. 1.查找字符位置函数 strpos($str ...

  9. 306573704 Char型和string型字符串比较整理(转)

    1.赋值 char赋值: char ch1[] = "give me"; char ch2[] = "a cup"; strcpy(ch1,ch2); cout ...

随机推荐

  1. python SSH客户端的交互式和非交互方式

    使用python中有一个paramiko模块来实现python SSH客户端,与SSH服务器交互时,需要注意有交互式和非交互式的区别. 只执行单条命令,之后就断开链接,可以使用非交互方式.执行多条命令 ...

  2. 朴素贝叶斯法(naive Bayes algorithm)

    对于给定的训练数据集,朴素贝叶斯法首先基于iid假设学习输入/输出的联合分布:然后基于此模型,对给定的输入x,利用贝叶斯定理求出后验概率最大的输出y. 一.目标 设输入空间是n维向量的集合,输出空间为 ...

  3. c#+cad2010+MQ接收消息

    cad2015+版本可以使用TrayItem气泡显示消息 static TrayItem trayItem = new TrayItem(); public static void testtrayi ...

  4. [STM32F103]串口UART配置

    l 串口时钟使能,GPIO时钟使能: RCC_APB2PeriphClockCmd(); l 串口复位: USART_DeInit(); 这一步不是必须的 l GPIO端口模式设置: GPIO_Ini ...

  5. JS 实现兼容IE图片向左或向右翻转

    <!DOCTYPE HTML> <head> <title>JS实现图片向左向右翻转</title> <meta http-equiv=" ...

  6. css中的定位属性

  7. js小技巧总结

    js小技巧总结 1.Array.includes条件判断 function test(fruit) { const redFruits = ["apple", "stra ...

  8. 数组Array的API1

    数组的方法arr.includes()arr.every(fn(val,i))arr.some(fn(val,i))arr.filter(fn(val,i))arr.map(fn(val,i))ar. ...

  9. OGG-01091 Unable to open file "./dirdat/cs001481" (error 2, No such file or directory)

    记一次ogg报错ogg-01091的处理过程 现场有一套RAC数据库的服务器异常重启,其中一个节点上部署了OGG,机器开机之后,发现OGG所有应用进程abended状态,查看日志,发现报错如下图: 分 ...

  10. 转载:深入浅出Zookeeper

    ZAB协议 ZAB协议是专门为zookeeper实现分布式协调功能而设计.zookeeper主要是根据ZAB协议是实现分布式系统数据一致性. zookeeper根据ZAB协议建立了主备模型完成zook ...