永发信息网

c/c++ 语言中cin与scanf有什么不同

答案:6  悬赏:0  手机版
解决时间 2021-02-20 01:09
c/c++ 语言中cin与scanf有什么不同
最佳答案
c/c++ 语言中cin与scanf区别为:性质不同、操作效率不同、取数据不同。
一、性质不同
1、cin:cin是标准化输入,包含在头文件<iostream>中。
2、scanf:scanf是格式化输入,包含在头文件<stdio.h>中。
二、操作效率不同
1、cin:cin先把要输入的东西存入缓冲区,再输入,导致的输入操作效率稍低,但书写简便。

2、scanf:scanf的是用指针把要输入的东西输入的,输入效率比较高,但是写代码麻烦。




三、取数据不同
1、cin:cin的取数据时会忽略空格和回车继续输入。
2、scanf:scanf取数据时遇到回车、空格、TAB就会停止。
全部回答
scanf用在c中,cin用在c++中。 scanf输出要写格式,scanf("%d",&a); cin不用,直接写,cin>>a;
c语言里的输入输出是用函数实现的,不是语言本身的事情, c++是用流进行输入输出输出。

你可以通过string[] args参数输入

也可以用scanner类的方法实现

还有其它的方法

scanf是格式化输入在C里用 cin是输入流 常用于C++
首先,cin 是个C++类型对象,它的类型是basic_istream,scanf 是个不定参数的函数, 其次,cin 所属的类重载了 >> 运算符,使输入更简单了,比如 double d; cin>>d; 而 scanf 不一样的, double d;scanf("%lf",&d); 看起来麻烦一点。 另外,cin 也更安全,不会发生内存溢出。 char c; scanf("%lf",&c); //这时需要8个字节的空间,但只提供一个,内存溢出。 而 cin 也更安全 char c;cin>>c; //只输入字符,不会溢出 从底层上来说,C++ 的 cin 与 C语言的 scanf 都采用 stdin 作为输入源, 但cin和scanf 采用了不同的缓冲区,可以通过 ios 头文件里面的 sync_with_stdio () 函数设置缓冲区共享,使cin和scanf 共享缓冲区。 C++也可以改变输入源,但这样很复杂。 其实,C++对 stdin 进行了封装,用流和迭代器进行了转变了流的概念而已,而C的scanf直接操作 stdin而已
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
Sheprefersthesofamadeofrealleatheralthough
福旺锅炉在哪里啊,我有事要去这个地方
国际航班随身行李 我的小拉杆箱50*35*25,可
R600a压缩机可以加134a的制冷剂吗
主提地址在什么地方,想过去办事
尼桑新轩逸已经跑了90000公里左右,齿轮链条发
求滨崎あゆみ的《The Gift》的平假名歌词 鸟
老公从他爸死后,就变的爱玩,乱花钱,说谎,不顾
为什么消极心理会让心里感到不舒服而不是大脑
哪个银行办信用卡通过率最高5分
军剑电器地址在什么地方,想过去办事
莫名其妙的意思
爱出色高清完整版下载地址
天天缘男装江南店这个地址在什么地方,我要处
鹤壁有多少辆车?
推荐资讯
如何养成看书的好习惯,并记住书中内容
东浦村在什么地方啊,我要过去处理事情
太原最好的平面设计公司是哪个?
老师和学生怎样才能建立和谐的师生关系
几种豆和大米一起吃好不好
开启朋友验证什么意思
映票一千多万是真的能兑30多万人民币吗?怎么
儿童手表是什么材质的?
英国是个怎样的国家
什么死谁手什么不停蹄什么指什么为什麽
铝合金轮毂真的比钢制轮毂散热好吗
腊肉什么牌子好
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?