网站开发 英文文章,教人做衣服的网站,网站如何提高流量,专业做官网的公司个人简介 #x1f440;个人主页#xff1a; 前端杂货铺 #x1f64b;♂️学习方向#xff1a; 主攻前端方向#xff0c;正逐渐往全干发展 #x1f4c3;个人状态#xff1a; 研发工程师#xff0c;现效力于中国工业软件事业 #x1f680;人生格言#xff1a; 积跬步…个人简介 个人主页 前端杂货铺 ♂️学习方向 主攻前端方向正逐渐往全干发展 个人状态 研发工程师现效力于中国工业软件事业 人生格言 积跬步至千里积小流成江海 推荐学习前端面试宝典 Vue2 Vue3 Vue2/3项目实战 Node.jsThree.js数据结构与算法体系教程 个人推广每篇文章最下方都有加入方式旨在交流学习资源分享快加入进来吧 C基础篇
内容参考链接C入门一C——简介、Hello World、变量常量、数据类型C入门二C——数组、多维数组、简单排序、模板类vector 文章目录 C基础篇前言一、字符串二、读写文件1、文件读取2、文件写入 三、结构体四、 枚举总结 前言
大家好这里是前端杂货铺。
上一篇文章我们初步认识了 C并学习了数组和模板类。
接下来继续我们 C 的学习 一、字符串
下面进行一些对于字符串的相关操作内容很简单直接看代码和结果吧
#includeiostream
#includestring
using namespace std;int main() {// 默认初始化string s1;// 拷贝初始化string s2 s1;// 直接初始化string s3 Hello world!;string s4(hello world!);string s5(5, h);cout s5 endl; // hhhhh// 访问字符cout s4[1] s4[1] endl; // s4[1]e// 修改 s4 的第一个字符为 Hs4[0] H;cout s4 s4 endl; // Hello world!// 修改 s4 的最后一个字符为 ?s4[s4.size() - 1] \?;cout s4 s4 endl; // Hello world?for (int i 0; i s4.size(); i) {s4[i] toupper(s4[i]);}cout 转为大写的s4 s4 endl; // HELLO WORLD?// 字符串拼接string str1 hello;string str2(world);string str3 str1 str2 !; // hello world!cout str3 endl;// string str5 hello world; // 错误cin.get();
}为什么 string str5 hello world; 为错误代码呢 因为 hello 等价于 char str[6] { h, e, l, l, o, \0 }; char类型的数组是没有这样的拼接操作的所以两个字符串字面值不能相加。 二、读写文件
C 中读文件使用 ifstream写文件用 ofstream。
1、文件读取
我们首先在资源文件夹下创建一个 input.txt 文件随意输入一些内容… 接下来我们分别使用 按照单词逐个读取、逐行读取、逐个字符读取 的方式读取我们刚刚创建的 input.txt 文件
#includeiostream
#includefstream
#includestring
using namespace std;int main()
{// 文件读取ifstream input(input.txt);// 按照单词逐个读取string word;while (input word){cout word endl;}// 逐行读取string line;while (getline(input, line)){cout line endl;}// 逐个字符读取char ch;while (input.get(ch)) {cout ch endl;}cin.get();
}以上三种方式打印的内容分别如下图第三种方式太长了没有完全截图能理解逐个字符就行 2、文件写入
我们先读取刚刚的 input.txt 文件然后写入到 output.txt 文件
#includeiostream
#includefstream
#includestring
using namespace std;int main()
{// 文件读取ifstream input(input.txt);// 文件写入ofstream output(output.txt);// 逐行读取string line;while (getline(input, line)){output line endl;}cin.get();
}我们找到与 input.txt 同文件夹的 output.txt 文件即可看到如下内容 三、结构体
结构体是用户自定义的复合数据结构里面可以包含多种不同类型的数据对象。
下面的代码进行了 定义结构体、创建数据对象并做初始化、定义和遍历结构体数组 等操作代码很简单类似于类的定义和创建一睹为快
#includeiostream
#includestring
using namespace std;// 定义一个结构体
struct StudentInfo
{string name;int age;double score;
}stu2, stu3 {前端杂货铺, 22, 90};// 输出数据对象的完整信息
void printInfo(StudentInfo stu)
{cout 学生姓名 stu.name \t 年龄 stu.age \t 成绩 stu.score endl;
}int main()
{// 创建数据对象并做初始化StudentInfo stu {张三, 18, 95.5};StudentInfo stu1 { 李四, 20, 85 };StudentInfo stuCopy stu3;stu2.name 王五;stu2.age 12;stu2.score 65;printInfo(stuCopy);printInfo(stu);printInfo(stu1);printInfo(stu2);// 定义结构体数组StudentInfo s[3] {{孙行者, 18, 85.2},{行者孙, 20, 96.2},{者行孙, 23, 85.2}};for (StudentInfo stu : s) {printInfo(stu);}cin.get();
}四、 枚举
当遇到某个数据对象只能取有限个常量值的情况时比如一周七天C提供了另一种批量创建符号常量的方式可以替代 cont即枚举类型 enum。
与结构体不同的是枚举类型内只有有限个名字它们都各自代表一个常量被称为 “枚举量”。
#includeiostream
using namespace std;enum Week
{Mon, Tue, Wed, Thu 10, Fri, Sat, Sun
};int main()
{Week w1 Mon;Week w3 Week(3);Week w4 Thu;Week w5 Fri;cout w1 w1 endl; // 0cout w3 w3 endl; // 3cout w4 w4 endl; // 10cout w5 w5 endl; // 11cin.get();
}总结
本篇文章我们认识了字符串、文件的读写并认识了结构体和枚举的使用方式等。总体内容比较简单有个大体的理解就可以。
好啦本篇文章到这里就要和大家说再见啦祝你这篇文章阅读愉快你下篇文章的阅读愉快留着我下篇文章再祝 参考资料 百度百科 · C2023最新版C【作者bilibili-尚硅谷】