积累一些不太常用的C/C++语言知识(不断更新)

2018-06-17 22:24:04来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

这里积累一些日常编程用得比较少的知识,不断添加。

  • scanf("%c%*c%c",&a,&b); 其中的*表示跳过,本来输入三个数字,结果中间那个读入后被抛弃,a和b的值分别是第一次和第三次输入的值。
  • printf("%d%*d%d",a,b,c,d); 其中*表示占位,相当于printf("%d%bd%d",a,b,c,d);注意这里的b就相当于我们平时用的占位数。
  • printf("%#x",a); 其中#表示格式化的前缀,比如十六进制会加上0x,八进制会加上0。
  • c++ std::cin关闭同步流:std::ios::sync_with_stdio(false); 可以使其与scanf读取速度相差不太大(关闭同步流之后,不要同时混用cout和printf );进一步可以使用std::cin.tie(0);解除cin和cout的绑定。这种做法通常用于减少大量数据占用的IO时间,但是本人测试过,有一些个例的数据量在万以上时,两者差距仍然在5倍以上(个例参见敌兵布阵问题)。
    
    
     

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:P1332 血色先锋队

下一篇:P1803 凌乱的yyy