王道复试C语言第三章字符串的基本使用——代码笔记分享

文章介绍了在C++中如何进行字符串的输入输出,如使用fgets读取一行,以及字符串的其他操作,如清除、连接及长度计算。同时,展示了使用string的find方法进行子串查找,并根据查找结果判断子串是否存在。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

字符串

字符串的输入输出+其他操作

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string>
using namespace std;

int main() {
	char buf[100];//申请一个字符数组
	//scanf("%s", buf);//一次只能读取一个单词
	fgets(buf, 100, stdin);//一次读取一行,包括换行符!
	string str = buf;//C转C++字符串,便于处理
	//printf("length of str = %u\n", str.size());//求字符串长度
	str.erase(str.size() - 1);//删除字符串最后下标的元素
	str.clear();//清空字符串
	str = str + "world";//+字符串的链接(只针对C++字符串)
	printf("str = %s\n", str.c_str());//C++转C字符串,便于输出

	访问数组每个元素进行输出
	//for (int i = 0; i < str.size(); i++) {
	//	printf("%c\n", str[i]);
	//}

	使用string::iterator字符串的迭代器进行输出
	//for (string::iterator it = str.begin(); it != str.end(); ++it) {
	//	printf("%c\n", *it);//*通过地址访问元素
	//}
}

find查找操作

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string>
using namespace std;

int main() {
	string str = "howareyou";
	//int pos = str.find("are");
	int pos = str.find("was");
	//判断子字符串有没有在str中出现过
	if (pos != string::npos) {
		//有匹配
		printf("Found, pos = %d\n", pos);
	}
	else {
		//没有匹配
		printf("Not Found\n");
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值