C++ 学习 ::【基础篇:02】:C++ 简单标准输入输出引入与使用【 C 的简单比较 】

本系列 C++ 相关文章 仅为笔者学习笔记记录,用自己的理解记录学习!C++ 学习系列将分为三个阶段:基础篇、STL 篇、高阶数据结构与算法篇,相关重点内容如下:

  1. 基础篇类与对象(涉及C++的三大特性等);
  2. STL 篇学习使用 C++ 提供的 STL 相关库
  3. 高阶数据结构与算法篇手动实现自己的 STL 库设计实现高阶数据结构,如 B树、B+树、红黑树等。

本期内容:C++ 简单标准输入输出引入与使用【 C 的简单比较 】

  • 注:本篇仅作简单的使用认识,后续到 io 时会有深入分享!

目录:
1. C 语言输入输出的基本用法
2. C++ 输入输出的基本用法
3. 对比小结
4. 关于格式控制问题说明
合集链接


1. C 语言输入输出的基本用法

代码示例
#define _CRT_SECURE_NO_WARNINGS		
// 上行是对于使用vs 编译器解决 C4996 warings 所写:更多解决办法参考下述链接!	

#include<stdio.h>
int main() {
    int age;
    float chinese;
    printf("请输入年龄:");
    scanf("%d", &age);
    printf("请输入语文成绩:");
    scanf("%.2f", &chinese);

    printf("hello world!\n");
    printf("%d\n", age);
    printf("%f\n", chinese);
    return 0;
}

显然,C 语言输入输出数据时为了保证数据的正确性,输入输出指定类型的数据需要指定的数据类型占位符!
关于 warings C4996 的解决方案:关于 Visual Studio 的警告系列 warning C4996:: ‘scanf‘

2. C++ 输入输出的基本用法

代码示例
#include<iostream>
// using namespace std;
using std::cout;
using std::cin;
using std::endl;

int main(){
    int age;
    float chinese;
    cout << "请输入年龄:";
	cin >> age;
    cout << "请输入语文成绩:";
    cin >> chinese;
    
    cout << "hello world!" << endl;
    cout << age << endl;
    cout << chinese << endl;
    return 0;
}

从表面上看,C++ 的输入输出相比于 C 语言,我们不必在意数据的数据类型,直接输出即可!

3. 对比小结

  1. 用C++输入输出更方便,不需要像 printf/scanf 输入输出时那样,需要手动控制格式。C++ 的输入输出可以自动识别变量类型。
  2. 实际上 cout 和 cin 分别是 ostream 和 istream 类型的对象,>> 和 << 也涉及运算符重载等知识。【后面会慢慢分享】

4. 关于格式控制问题说明

  1. C++ 拥有自己的格式控制方式,但相较于 C 语言会显得比较麻烦!如小数精确度的控制、输出内容的占位宽度等;
  2. 由于 C++是兼容 C 语言的,因此如果需要指定格式输出时,完全可以使用 C 语言 printf 来实现。
/* 小数精确度的控制:保留两位小数 */
double score = 10.123456;
// C 语言:
printf("%.2lf\n", score);			// 输出:10.12
// C++:
std::cout.precision(4);				// 精确度设定是有效数字个数
std::cout << score << std::endl;	// 输出:10.12
/* 输出内容的占位宽度:默认右对齐 */
char str[] = "hello world";
// C 语言:
printf("%20s\n", str);
// C++:
std::cout.width(20);
std::cout << str << std::endl;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NPC的白话文谈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值