天下之大,无奇不有,C++也是这样,今天小编来盘点几个有意思的代码,看看你认识几个?以后见到之后千万别装不认识。

一、基础篇——不一样的输出

1.cerr 输出

  cout和cerr究竟有什么不同?这也是小编以前很茫然的一部分;

  cout对应于标准输出流,默认情况下是显示器。这是一个被缓冲的输出,可以被重定向。

  cerr对应标准错误流,用于显示错误消息。默认情况下被关联到标准输出流,但它不被缓冲,也就说错误消息可以直接发送到显示器,而无需等到缓冲区或者新的换行符时,才被显示。一般情况下不被重定向。 
  翻译成人话来讲就是cout可重定向,cerr不能重定向,也就是说如果你是搞竞赛的话,please “珍爱生命,远离cerr"。那么,为什么用cerr?比如说:你的程序遇到了栈用完了的情况或者递归无出口之类的情况,没有地方借内存来存放错误信息,自从有了cerr,革命变得焕然一新,在最紧急的情况下,仍能得到输出的支持。
 
 
二、手残篇——懒人的做法
2.传说中的万能头文件!
  #include <iostream> 

  #include <cstdio> 
  #include <fstream> 
  #include <algorithm> 
  #include <cmath> 
  #include <deque> 
  #include <vector> 
  #include <queue> 
  #include <string> 
  #include <cstring> 
  #include <map> 
  #include <stack> 
  #include <set> 
  这一列头文件你是不是看的眼花缭乱呢?
  为了能让我们的手可以不变残,为了让我们的大脑得到休息,为了我们能避免不必要的尴尬,请认准:
  #include<bits/stdc++.h>,对,你没有看错!一个顶13个!像小编这样的,从来都记不住#include<algorithm>,以至于不能用sort~~~,只能手写排序,实属人生一大悲剧。
  那么这么简便的一个头文件在此,其他头文件都得靠边站,要它们有甚用?虽然它在大多oj上的兼容性还蛮好的,但是有一些竞赛是不能使用万能头文件的,据说时间也比较慢,所以不到“山重水复疑无路”,最好不要使用。
 
3.using namespace std;有时候可以不用写!
#include<iostream>
using namespace std;
int main()
{
  cout<<"Hello,world";
  return 0;
}
  小编是一个手懒的人,自然与旁人不同,小编会浓缩成这样。
#include<iostream>
main()
{
  std::cout<<"Hello,world";
}
  对,就是这么霸气!return 0都不带写的,程序仍然可以运行。如果使用using namespace std;语句较少,可以在每句前加std::在特定情况下很方便。
 
4.typedef,一个更偷懒且没有局限性的法宝
  小编以前一直看不懂什么是typedef,也不愿意知道,后来才明白它可以起到一劳永逸的效果。比方说小编在一次比赛中发现题目要求要用long long,且要写多次,小编会在main函数外添一句typedef   long long   ll;这样以后再写long long就写成 ll name;就好了。小编是奇葩中的奇葩,自然不会就此罢休,于是写了一句#define long long ll;并把刚才那句删了,结果还没有任何错误,一样可以达到相同的效果,小编真是太高兴了,因为以后不用背typedef这个单词了。
 
 
三、代码与时间的较量!!!
5.>> 运算 和 << 运算
>> 运算是二进制的情况下,右移多少位,相当于除以2的n次幂 例如: 3>>1 = 1 8>>2 = 2 
<< 运算同理,小编之前一直看不懂这是干什么,最近才明白,小编心里有一个大大的问号,直接写一个a/2什么的不就行了。
像小编这样的蒟蒻是无法理解什么是时间复杂度的,小编只在意怎么能写出题来,如果你是大佬,建议学会这个运算。
 
6.输出的不同 
众所周知,C++中输入输出分为两大部分:cin和cout,scanf和printf;
如果你还在写:
#include<iostream>
using namespace std;
int main()
{
  cout<<"Hello,world!";
  return 0;
}
你就out了,别看cin,cout写起来方便且是C++独有的,其实printf和scanf才是比较快的,如果是参加竞赛,请使用printf和scanf。
 
感谢所有看到最后的同志们,小编还有很多不足,希望大家能提出来,小编会更加努力的。

C++—揭秘大牛博客一些不同凡人的写法的更多相关文章

  1. web前端/移动端H5博客专家博客大全--值得收藏的前端技术大牛博客地址

    web前端/移动端H5博客专家博客大全--值得收藏的前端技术大牛博客地址   Huang Jie Blog .Com-前端开发 http://www.huangjieblog.com/?feed=rs ...

  2. 大牛博客!Spark / Hadoop / Kafka / HBase / Storm

    在这里,非常感谢下面的著名大牛们,一路的帮助和学习,给予了我很大的动力! 有了Hadoop,再次有了Spark,一次又一次,一晚又一晚的努力相伴! HBase简介(很好的梳理资料) 1. 博客主页:h ...

  3. 我的Android进阶之旅------>经典的大牛博客推荐(排名不分先后)!!

    本文来自:http://blog.csdn.net/ouyang_peng/article/details/11358405 今天看到一篇文章,收藏了很多大牛的博客,在这里分享一下 谦虚的天下 柳志超 ...

  4. 【转】IT大牛博客

    原文:http://blog.csdn.net/qq1175421841/article/details/49384841 首届中国最受欢迎50大技术博客获奖名单如下: 第一名:李会军  http:/ ...

  5. iOS开发的知名大牛博客小汇

    王巍的博客:王巍目前在日本横滨任职于LINE.工作内容主要进行Unity3D开发,8小时之外经常进行iOS/Mac开发.他的陈列柜中已有多款应用,其中番茄工作法工具非常棒.http://onevcat ...

  6. iOS的非常全的三方库,插件,大牛博客

    转自: http://www.cnblogs.com/zyjzyj/p/6015625.html github排名:https://github.com/trending, github搜索:http ...

  7. iOS开发 非常全的三方库、插件、大牛博客等等

    UI 下拉刷新 EGOTableViewPullRefresh- 最早的下拉刷新控件. SVPullToRefresh- 下拉刷新控件. MJRefresh- 仅需一行代码就可以为UITableVie ...

  8. 关注的Elasticsearch大牛博客

    1.http://wangnan.tech/ 2.https://elasticsearch.cn/people/wood 3.https://www.jianshu.com/u/244399b1d7 ...

  9. HBase学习之路 (八)HBase大牛博客

    主要是记录一下链接 http://hbasefly.com

随机推荐

  1. [Leetcode] Anagrams 颠倒字母构成词

    Given an array of strings, return all groups of strings that are anagrams. Note: All inputs will be ...

  2. [Leetcode] distinct subsequences 不同子序列

    Given a string S and a string T, count the number of distinct subsequences of T in S. A subsequence ...

  3. Clevo P950系列拆机

    Clevo P950系列(包括神舟精盾T96/T97/T96C/T96E/T97E,炫龙耀9000,铁头人T800同模具机型)拆机 拆机恢复时间:20181203 12:28-14:58   一.普通 ...

  4. zigbee ---- endpoint理解

    很多资料将其翻译为“端点”,我们不如也这么叫. 在windows上使用不同的软件进行通信,数据包到达不同的应用的方法就是通过寻找IP地址和端口号来确定某一个应用的,也就是我们所说的五元组(源IP,目的 ...

  5. jquery、zepto冲突

    <script type="text/javascript" src="js/jquery.min.js"></script> < ...

  6. linux 服务器下入侵之后的日志清理

    1.web日志的清理:access.log 和auth.log 位置在/var/log/下面. 2.系统日志存放在:/root/.bash_history

  7. 设计模式功能概述(Design Patterns)

    1.Abstract Factory:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类. 2.Adapter:将一个类的接口转换成客户希望的另一个接口.Adapter模式使得原本由于 ...

  8. 【BZOJ2338】【HNOI2011】数矩形 [计算几何]

    数矩形 Time Limit: 20 Sec  Memory Limit: 128 MB[Submit][Status][Discuss] Description 最近某歌手在研究自己的全国巡回演出, ...

  9. openstack 问题澄清

    1. neutron中plugin与agent是一一对应的吗? 在不使用ml2时,plugin与agent一一对应,如ovs-plugin与ovs-agent:当使用ml2 plugin时,该plug ...

  10. Sublime Text 3 遇到的一些小坑的解决方法

    1.[不停弹出更新框]Sublime Text 3 软件会弹出“Update Available”对话框,点击“Cancel”按钮取消:取消之后还是会频繁出现 解决方法:点击菜单栏“Preferenc ...