摘抄某女同学的博客,因为是博客园的没法转载,只好搬运,自愧不如

本文介绍如何取消cin与cout的同步以提高程序效率,并讨论良好程序设计风格的重要性,包括头文件与源文件的使用规范及解决VS2015使用fopen等函数报错的方法。

原文出自:http://www.cnblogs.com/flipped/

作者据我推测吧,应该是bupt的,估计也参加了弱校联盟,,,甚至我可能都见过。。。。。圈子越来越小了


首先关于cin和cout的同步


std::ios::sync_with_stdio(false);

这句语句是用来取消cin的同步,什么叫同步呢?就是iostream的缓冲跟stdio的同步。如果你已经在头文件上用了using namespace std;那么就可以去掉前面的std::了。取消后就cin就不能和scanf,sscanf, getchar, fgets 之类同时用了,否则就可能会导致输出和预期的不一样。


取消同步的目的,是为了让cin不超时,另外cout的时候尽量少用endl,换用"\n",也是防止超时的方法。

当然,尽量用scanf,printf 就不用考虑这种因为缓冲的超时了。


关于良好程序设计的风格和惯例

以下是良好的程序设计风格和惯例:

头文件(.h)中进行函数声明,源文件(.c)中进行函数的定义;

变量的声明统一放到头文件;



解决VS2015使用fopen / fprintf 等函数报错的问题

出现错误提示: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 

解决方法:右键工程名-->属性-->C/C++-->预处理器-->预处理器定义,编辑右边输入框加入:

_CRT_SECURE_NO_WARNINGS

点击顶部菜单栏->Project->Edit more properties。然后在打开的设置框左边选择C/C++ -> Preprocessor。右边的Preprocessor Definitions右边输入;_CRT_SECURE_NO_WARNINGS确定就可以不报错了。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值