`
kmplayer
  • 浏览: 496953 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

条款2:尽量以<iostream>取代<stdio.h>

阅读更多
1,scanf和printf的缺点:不具有型别安全(type-safe)性质,不可扩充.
而型别安全和扩充性正是C++的基石之一.

2,某些情况下,还是需要回头使用以前的东西:
(1)某些iostream的实现效率比不上对应的c stream函数.
而你的程序将此差异视为一个重要因素.
注:效率问题对一般的iostream并不成立.
(2)移动性的考虑.
某些需要最大移植能力的应用程序可能会发现不同的iostream版本支持不同的标准.
(3)由于iostream中的class有constructor,而且还可能牵扯到static对象的初始化次序问题,这时候c标准库函数可能比较简单.
分享到:
评论

相关推荐

    贪吃蛇 控制台程序

    #include&lt;iostream&gt; #include&lt;time.h&gt; #include&lt;conio.h&gt; #include&lt;windows.h&gt; #include&lt;stdlib.h&gt; using namespace std; struct she //用x,y记录蛇的坐标 { int x; int y; struct she *next; }*tou,*wei; //...

    c++中<iostream>库的底层实现

    c++中&lt;iostream&gt;库的底层实现 c++中&lt;iostream&gt;库的底层实现 c++中&lt;iostream&gt;库的底层实现 c++中&lt;iostream&gt;库的底层实现 c++中&lt;iostream&gt;库的底层实现 c++中&lt;iostream&gt;库的底层实现 c++中&lt;iostream&gt;库的底层实现 c++...

    #include <iostream>

    #include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; int main() { int n,i,k=0; cin&gt;&gt;n; for(i=n*n;i&gt;=1;i--) { cout&lt;&lt;setw(5)&lt;&lt;i; k++; if(k%n==0) cout&lt;&lt;endl; } cout&lt;&lt;endl; return 0;

    vc++2008编译不了#include头文件

    vc++2008编译不了#include&lt;iostream.h&gt;头文件

    自己制作的一个《学霸模拟器》

    #include&lt;bits/stdc++.h&gt;#include&lt;stdio.h&gt;#include&lt;windows.h&gt;#include&lt;conio.h&gt;#include&lt;stdlib.h&gt;#include&lt;time.h&gt;#define LEN 30#define WID 25#include&lt;bits/stdc++.h&gt;#include&lt;iostream&gt;#include&lt;fstream&gt;#...

    s5pv210 camera test

    #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;string.h&gt; #include &lt;linux/types.h&gt; #include &lt;linux/fb.h&gt; #include &lt;linux/videodev2.h&gt; #include &lt;sys/poll.h&gt; #include "videodev2_samsung.h

    校园信息管理系统之容器法

    #include &lt;iostream&gt; #include &lt;fstream&gt; #include "head.h" //--------------------------------------- long Student::returnsort(){return id;} void Student::show() { cout&lt;&lt;"*************************"&lt;...

    华为笔试题

    #include &lt;iostream.h&gt; #include &lt;ctype.h&gt; #include &lt;string.h&gt; void fun(char a[]) { int i,j,m=0,s=0,strl; strl=strlen(a); char temp[30]={0}; for(i=strl-1;i&gt;=0;i--) {if(!isspace(a[i])) m++; ...

    c++万能头文件(包含所有其他头文件)#include<bits/stdc++.h> 注:此cpp文件包含万能头文件以及基本框架

    #include &lt;iostream&gt; #include &lt;istream&gt; #include &lt;iterator&gt; #include &lt;limits&gt; #include &lt;list&gt; #include &lt;locale&gt; #include &lt;map&gt; #include &lt;memory&gt; #include &lt;new&gt; #include &lt;numeric&gt; #include &lt;ostream&gt; #...

    C语言头文件 IOSTREAM.H

    C语言头文件 IOSTREAM.HC语言头文件 IOSTREAM.HC语言头文件 IOSTREAM.HC语言头文件 IOSTREAM.HC语言头文件 IOSTREAM.HC语言头文件 IOSTREAM.HC语言头文件 IOSTREAM.HC语言头文件 IOSTREAM.HC语言头文件 IOSTREAM.HC...

    C++程序设计-最新.pdf

    //输入圆的半径 Radius,输出圆的周长 Perimeter 和面积 Area #include &lt;iostream.h&gt; #include &lt;math.h&gt; const double PI = 3.14159; //定义一个常量 PI int main() { int radius; double perimeter, area; cout &lt;...

    计算器 用c++写的

    #include&lt;iostream&gt; 此计算器是控制台程序, 它的参考价值,主要在于算法上面, 采用递归的方法处理。 可以直接处理这样的输入: "pow(2,pow(2,pow(2,2)))-100*sqrt(sqrt(100))*10+(-1-1-1-3)+pow(5,2)

    CVE-2022-37969 Windows 本地权限提升 PoC

    #include &lt;stdio.h&gt; #include &lt;iostream&gt; #include &lt;windows.h&gt; #include &lt;clfsw32.h&gt; #include &lt;ntstatus.h&gt; #include &lt;processthreadsapi.h&gt; #include &lt;tlhelp32.h&gt; #include "ntos.h" #include "crc32.h" #...

    C++ Primer 源程序

    #include &lt;iostream&gt; #include "Sales_item.h" int main() { Sales_item item1, item2; std::cin &gt;&gt; item1 &gt;&gt; item2; // first check that item1 and item2 represent the same book if (item1.same_isbn...

    使用`stdvector`来创建二维数组(通常称为二维向量).pdf

    #include &lt;iostream&gt; #include &lt;vector&gt; int main() { // 创建一个二维向量,初始时没有任何元素 std::vector&lt;std::vector&lt;int&gt;&gt; matrix; // 可以通过 push_back 方法添加行 matrix.push_back({1, 2, 3}); // 添加第...

    C++操作MySQL大量数据插入效率低下的解决方法

    #include &lt;iostream&gt; #include &lt;winsock2&gt; #include &lt;string&gt; #include "mysql.h" #pragma comment(lib, "libmysql.lib"); using namespace std; int main() { MYSQL mysql; mysql_init(&mysql); // 初始化 MYSQL...

    SA雷达数据结构.doc

    #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;stdlib.h&gt; using namespace std; #define RGates 460 //S BAND 反射率距离库数 #define VGates 920 //S BAND 速度距离库数 #define WGates 920...

    成员函数用于回调函数

    #include &lt;stdio.h&gt; #include &lt;algorithm&gt; #include &lt;vector&gt; #include &lt;string&gt; #include &lt;iostream&gt; #include &lt;math.h&gt; using cmpfunc = int(__cdecl*)(const void*, const void*); using DebugArrayFunc = void(_...

    数据结构

    #include&lt;stdio.h&gt; #include&lt;stdlib.h&gt; #include&lt;string.h&gt; using namespace std; #define LIST_SIZE 100 #define LISTINCREMENT 10 #define OK 1 #define ERROR 0 #define TRUE 1 #define FALSE 0 #define OVERFLOW...

    图像缩放c++程序

    图像尺寸改变 #include "stdafx.h"//这...#include &lt;stdio.h&gt; using namespace cv; using namespace std; #define DST_IMG_WIDTH 20 //需要调整图片后的尺寸宽度 #define SRC_IMG_HEIGH 20 //需要调整图片后的尺寸高度

Global site tag (gtag.js) - Google Analytics