编程论坛

 找回密码
 立即注册
广告联系qq1031180668广告位
查看: 750|回复: 1

[c/c++] c++对c语言的扩展-输入与输出(cin/cout)

[复制链接]
  • ta_mind

    2018-8-17 21:57
  • classn_01: 71 classn_02

    [LV.6]常住居民II

    981

    主题

    1702

    帖子

    3331

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    3331

    最佳新人活跃会员热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老

    发表于 2018-1-11 18:25:33 | 显示全部楼层 |阅读模式
    1.cin && cout
    cin 和 cout 是 C++的标准输入流和输出流。他们在头文件 iostream 中定义
    流名 含义 隐含设备
    cin 标准输入 键盘
    cout 标准输出 屏幕
    cerr 标准错误输出 屏幕
    clogcerr 的缓冲输出 屏幕


    输入输出简单例子:
    [C++] syntaxhighlighter_viewsource syntaxhighlighter_copycode
    #include <iostream>
    using namespace std;
    
    int main()
    {
    	char name[30];
    	int age;
    	cout << "pls input name and age:" << endl;
    	cin >> name;
    	cin >> age;
    	cout << "your name is:" << name << endl;
    	cout << "your age is:" << age << endl;
    
    	return 0;
    }


    在字符串输入时可以用更安全的写法:
    [C++] syntaxhighlighter_viewsource syntaxhighlighter_copycode
    #include <iostream>
    #include <string>
    using namespace std;
    
    int main()
    {
    	//char name[30];
    	string name;
    	int age;
    	cout << "pls input name and age:" << endl;
    	cin >> name;
    	cin >> age;
    	cout << "your name is:" << name << endl;
    	cout << "your age is:" << age << endl;
    
    	return 0;
    }


    2.格式化
    c语言中 printf 拥有强大的格式化控制。c++亦可以实现,略复杂。
    (1)设置域宽及位数
    c语言中printf格式化控制的例子:
    [C] syntaxhighlighter_viewsource syntaxhighlighter_copycode
    #include<stdio.h>
    int main()
    {
    	//char name[30];
    	
    
    	printf("%c\n%d\n%f\n", 'a', 100, 120.00);
    	printf("%6c\n%6d\n%6.2f\n",'a',100,120.00);
    
    
    	return 0;
    }

    c++对c语言的扩展-输入与输出(cin/cout)

    c++对c语言的扩展-输入与输出(cin/cout)

    c++同样实现:
    [C++] syntaxhighlighter_viewsource syntaxhighlighter_copycode
    #include <iostream>
    #include <iomanip> 
    using namespace std;
    
    int main()
    {
    	//char name[30];
    	
    
    	//printf("%c\n%d\n%f\n", 'a', 100, 120.00);
    	//printf("%6c\n%6d\n%6.2f\n",'a',100,120.00);
    
    	cout << setw(6) << 'a' << endl << setw(6) << 100 << endl << setprecision(2) << setiosflags(ios::fixed) << 120.00 << endl;
    
    
    	return 0;
    }

    c++对c语言的扩展-输入与输出(cin/cout)

    c++对c语言的扩展-输入与输出(cin/cout)

    对于实型,cout 默认输出六位有效数据,setprecision(2) 可以设置有效位数,setiosflags(ios::fixed)设置小数的显示方式,
    setprecision(n)<<setiosflags(ios::fixed)可以合用。

    需要用到iomanip头文件,
    更多的格式化控制操作可以参考https://baike.baidu.com/item/iomanip/3319954?fr=aladdin




    不积跬步,无以至千里
  • ta_mind
    奋斗
    2018-1-25 10:22
  • classn_01: 11 classn_02

    [LV.3]偶尔看看II

    1

    主题

    7

    帖子

    33

    积分

    新手上路

    Rank: 1

    积分
    33
    发表于 2018-1-12 16:45:03 | 显示全部楼层
    sofa
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    手机版|Archiver|小黑屋|sitemap|编程论坛 - 一个单纯的编程学习交流论坛 ( 豫ICP备15032706号 )

    GMT+8, 2018-9-25 21:03 , Processed in 1.142070 second(s), 28 queries .

    Powered by Discuz! X3.4

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表