【探索C++】输入输出

news2024/11/24 17:30:43
  • (꒪ꇴ꒪ ),Hello我是祐言QAQ
  • 我的博客主页:C/C++语言,数据结构,Linux基础,ARM开发板,网络编程等领域UP🌍
  • 快上🚘,一起学习,让我们成为一个强大的攻城狮!
  • 送给自己和读者的一句鸡汤🤔:集中起来的意志可以击穿顽石!
  • 作者水平很有限,如果发现错误,请在评论区指正,感谢🙏


        在这篇博客中,我们将探讨 C++ 编程语言的基础知识,从 C++ 与 C 的区别开始,到 C++ 的优势命名空间以及输入输出等方面。

一、C++ 与 C 的区别

        虽然C++是C的超集,但二者之间存在许多关键区别。以下是一些主要的区别:

        1.面向对象:C++支持面向对象编程,这包括类,对象,继承,多态,封装等。而C语言是一个过程式编程语言,不支持这些特性。

// 一个简单的C++类示例
class Rectangle {
    int width, height;  // 私有成员变量
  public:
    void set_values (int,int);  // 成员函数
    int area() {return width*height;}  // 成员函数
};

        此外如果你对对向对象的理解还不够深刻或者无法理解他们,可以看看我的这一篇博客:

【探索C++】用实例教你理解面向对象编程(看不懂打我版)_祐言QAQ的博客-CSDN博客
        2.STL(Standard Template Library)模板库:C++有一个强大的标准模板库,提供了一些预定义的类和方法(函数),如向量,链表,集合,栈,队列,图等。C语言没有这样的库。

        3.异常处理:C++通过try、catch和throw关键字支持异常处理。而C语言没有内置的异常处理支持。

二、C++ 的优势

        C++是一种多范式编程语言,它具有诸多优势,包括:

        1.性能:C++的运行速度非常快,这使得它在需要大量计算的领域,如游戏编程,很受欢迎。

        2.面向对象:C++的面向对象特性使得代码更加模块化,更容易维护和复用。

        3.丰富的库支持:C++有大量的库和工具,可以处理各种任务,从图形用户界面到3D图形,从数据库操作到网络编程。

        4.强类型检查:C++ 在类型检查方面更加严格,可以减少很多常见的错误。

三、流

        在C++中,是一个抽象概念,用于处理输入/输出操作。想象一下现在有一条河流,而cin、cout等是河边垂钓者,数据就像是鱼,等待着这些垂钓者也就是流将其钓起。

常见的流有:

        cin(用于从标准输入读取数据);

        cout(用于向标准输出写入数据);

        cerr(用于输出错误消息); 

        clog(用于记录程序的一般信息)等。

#include <iostream>
using namespace std;

int main() {
    int myNumber;
    // 使用 << 操作符将信息输出到cout流
    cout << "Please enter a number: ";
    // 使用 >> 操作符从cin流读取输入
    cin >> myNumber;
    cout << "Your number is: " << myNumber << endl;
    return 0;
}

四、命名空间

        命名空间是 C++ 中用于避免命名冲突的机制。通过将一组相关的变量、函数、类等放在命名空间中,可以有效组织代码。

#include <iostream>
using namespace std;  // 使用std命名空间

int main() {
    cout << "Hello, World!";  // 实际上是std::cout
    return 0;
}

        如果你不想使用 using namespace std;你也可以直接使用 std:: 前缀来访问std命名空间中的元素:

#include <iostream>

int main() {
    std::cout << "Hello, World!";
    return 0;
}

        当然你也可以自己写一个属于自己的命名空间,下面就举一个简单的例子,写一个自定义命名空间teacher,存放一个名字“小明”,然后打印出小明。

#include <iostream>

using namespace std;

namespace teacher {
    // 在命名空间里定义字符数组并初始化
    char name[20] = "xiaoming";
    // 命名空间内部可以定义任何内容
}

int main() {
    // 因为 name 是定义在 teacher 命名空间里,所以要么先声明使用 teacher 命名空间,要么在 name 前面加上 teacher::
    cout << teacher::name << endl;
    return 0;
}

五、C++的输入与输出

        C++ 中的输入输出通过流来实现,可以使用 控制符“<<将数据输出到流中,使用控制符 >>” 从流中读取数据,这个<<看起来很像C中的移位操作符:左移,那么为什么在C++中就成了输出控制符了呢,实际上这就是C++的一个特点:重载,这里简单提一句,后续还会专门讲。

#include <iostream>
using namespace std;

int main() {
    int age;
    cout << "Enter your age: ";
    cin >> age;
    cout << "You are " << age << " years old." << endl;
    return 0;
}

        这些是 C++ 中基础的输入输出操作,当然还有更多高级用法可以进一步探索。

        更多C/C++语言Linux系统数据结构ARM板实战相关文章,关注专栏:

   手撕C语言

            玩转linux

                    脚踢数据结构

                            系统、网络编程

                                     探索C++

                                             6818(ARM)开发板实战

📢写在最后

  • 今天的分享就到这啦~
  • 觉得博主写的还不错的烦劳 一键三连喔~
  • 🎉🎉🎉感谢关注🎉🎉🎉

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/949833.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【模拟】算法实战

文章目录 一、算法原理二、算法实战1. leetcode1576 替换所有的问号2. leetcode495 提莫攻击3. leetcode6 N字形变换4. leetcode38 外观数列5. leetcode1419 数青蛙 三、总结 一、算法原理 模拟就是用计算机来模拟题目中要求的操作&#xff0c;模拟题目通常具有代码量大、操作…

网络编程套接字(4):日志和守护进程

文章目录 网络编程套接字(4): 日志和守护进程5. 增加日志功能6. 守护进程6.1 进程知识补充(1) 进程组(2) 任务(3) 会话 6.2 守护进程(1) 概念(2) 创建守护进程 网络编程套接字(4): 日志和守护进程 5. 增加日志功能 接着上篇的内容&#xff0c;增加日志功能可以更好地&#xf…

16.WebSocket聊天室

基于SpringBoot 2.6.11 1.WebSocket WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议&#xff0c;可以在html页面直接使用。 WebSocket 使得客户端和服务器之间的数据交换变得更加简单&#xff0c;允许服务端主动向客户端推送数据。在 WebSocket A…

2021年12月 C/C++(五级)真题解析#中国电子学会#全国青少年软件编程等级考试

第1题&#xff1a;书架 John最近买了一个书架用来存放奶牛养殖书籍&#xff0c;但书架很快被存满了&#xff0c;只剩最顶层有空余。 John共有N头奶牛(1 ≤ N ≤ 20,000)&#xff0c;每头奶牛有自己的高度Hi(1 ≤ Hi ≤ 10,000)&#xff0c;N头奶牛的总高度为S。书架高度为B(1 ≤…

亚马逊云科技 云技能孵化营——我的云技能之旅

文章目录 每日一句正能量前言活动流程后记 每日一句正能量 不能在已经获得足够多的成功时&#xff0c;还对自己的能力保持怀疑&#xff0c;露出自信的微笑&#xff0c;走出自信的步伐&#xff0c;做一个自信的人&#xff01; 前言 亚马逊云科技 (Amazon Web Services) 是全球云…

Kao框架学习

中间件&#xff1a;洋葱模型 这是官网上给出的示例&#xff0c;从logger依次往下执行&#xff0c;执行到最底层的response往回退&#xff0c;结构很像同心圆的洋葱从外层向内层再由内层向外层。 next表示暂停当前层的代码进入下一层&#xff0c; 当最后一层执行完毕开始回溯&a…

学习完毕JavaSE的感想

今天&#xff0c;把Java复习完毕了&#xff0c;之前学习的时候&#xff0c;学校里学的总是有限的 &#xff0c;自己上手操作之后才发觉差的很多&#xff0c;部署服务器发现要学操作系统&#xff0c;学完了web基础 &#xff0c;又发现还得学前后端分离vue react这些&#xff0c;…

基于ensp的中大型企业网络安全解决方案的设计与实施

一、需求背景 公司部门具体背景&#xff1a;公司共设有人事部、财务部、销售部、市场部四个部门以及一个员工宿舍楼&#xff0c;公司有对外互联网业务需要提供。公司内存在重要部门需要保护数据安全以及访问控制。 &#xff08;1&#xff09;根据客户需求、部门、拓扑&#xf…

代码搜索技巧

在IDE中搜索代码时&#xff0c;经常会被相近的无关代码干扰&#xff0c;如筛选所有使用协程的代码段&#xff0c; 可见有大量“噪音”。 可使用IDE提供的正则表达式功能 如 使用 \bgo ,即匹配go开头的&#xff0c;且之后为空格的所有选项 使用 \bgo func,即匹配到了所有使用协程…

C++学习vector

1,把list的相关函数都实现出来&#xff08;未完&#xff09; 2&#xff0c; 运行结果&#xff1a;

等保测评各个级别的详细内容

等保测评是指信息系统安全等级保护测评&#xff0c;是我国信息安全领域中的一项重要工作。根据国家标准《信息系统安全等级保护基本要求》(GB/T 22239-2008)和《信息系统安全等级保护测评技术要求》(GB/T 25070-2010)。 等保测评分为五个级别&#xff0c;分别是&#xff1a;一级…

达梦数据库管理用户和创建用户介绍

概述 本文主要对达梦数据库管理用户和创建用户进行介绍和总结。 1.管理用户介绍 1.1 达梦安全机制 任何数据库设计和使用都需要考虑安全机制&#xff0c;达梦数据库采用“三权分立”或“四权分立”的安全机制&#xff0c;将系统中所有的权限按照类型进行划分&#xff0c;为每…

JZ12 矩阵中的路径

剑指Offer编程链接&#xff1a;JZ12 题目描述&#xff1a; 思路&#xff1a;递归回溯的方法&#xff0c;总结一下什么情况需要使用递归&#xff1a; 递归在解决问题时&#xff0c;通常涉及以下情况&#xff1a; 问题可被分解为较小的相似子问题。子问题与原问题具有相同的结…

eclipse设置字体大小

打开IDE&#xff0c;选择window->perferences 选择颜色与字体&#xff0c;选择basic 选中text-font之后选择编辑 选择合适的大小之后选择应用并关闭即可 结果

权限提升-Windows本地提权-AT+SC+PS命令-进程迁移-令牌窃取-getsystem+UAC

权限提升基础信息 1、具体有哪些权限需要我们了解掌握的&#xff1f; 后台权限&#xff0c;网站权限&#xff0c;数据库权限&#xff0c;接口权限&#xff0c;系统权限&#xff0c;域控权限等 2、以上常见权限获取方法简要归类说明&#xff1f; 后台权限&#xff1a;SQL注入,数…

ELK日志收集系统

一、概述 1、ELK由三个组件构成 2、作用 日志收集 日志分析 日志可视化 3、为什么使用&#xff1f; 日志对于分析系统、应用的状态十分重要&#xff0c;但一般日志的量会比较大&#xff0c;并且比较分散。 如果管理的服务器或者程序比较少的情况我们还可以逐一…

数据结构学习 --4 串

数据结构学习 --1 绪论 数据结构学习 --2 线性表 数据结构学习 --3 栈&#xff0c;队列和数组 数据结构学习 --4 串 数据结构学习 --5 树和二叉树 数据结构学习 --6 图 数据结构学习 --7 查找 数据结构学习 --8 排序 本人学习记录使用 希望对大家帮助 不当之处希望大家帮忙纠正…

二极管:常用二极管封装

常用二极管封装 1、DO-41 2、DO-201AD 3、DO-35 4、LL-34 5、DO-214AC (SMA) 6、SMB

电脑数据丢失如何恢复?最常见的2种数据恢复方法!

大家使用电脑的时候是否有发生过不小心删除数据&#xff0c;或者数据不明丢失的情况呢&#xff1f;相信九成都是有的&#xff0c;那么当你的数据不小心删除或是丢失的话&#xff0c;有没有电脑数据恢复方法&#xff1f;其实很多人当自己电脑的数据丢失后&#xff0c;如果不是很…