IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++ 常识 && 技巧 -> 正文阅读

[C++知识库]C++ 常识 && 技巧

数的类型

  • 每种类型的最大值、最小值、所占字节
    在这里插入图片描述
  • 不同类型下的 0x3f
    在这里插入图片描述

运算符优先级

  1. (),[]
  2. !,+(正),-(负),~,++,–
  3. *,/,%
  4. +(加),-(减)
  5. 右移,左移
  6. <,<=,>,>=
  7. ==,!=
  8. &
  9. ^
  10. |
  11. &&
  12. ||

这就是一些常用运算符的优先级,大家码代码时还是最好加括号吧,尤其是位运算毒瘤状压DP害人不浅啊

卡常

最基本的卡常应该就是快读快输了。

  • “真”快读
#define getchar() (p1==p2&&(p2=(p1=buf)+fread(buf,1,1<<21,stdin),p1==p2)?EOF:*p1++)
char buf[(1<<21)+5], *p1 = buf, *p2 = buf;

inline int qread() {
    char c = getchar();
    int x = 0, f = 1;
    while (c < '0' || c > '9') {
        if (c == '-') f = -1;
        c = getchar();
    }
    while (c >= '0' && c <= '9') {
        x = x * 10 + c - '0';
        c = getchar();
    }
    return x * f;
}

这是最纯正的快读。

  • 快输
    基本上还是别用了吧,没什么优化效果。

注意,快读快输适合在数据较大时使用,否则后果自负 有可能有副作用。

  • register
    遇到多重循环时可以用它,例:
for(register int i=1;i<=n;++i) {
	for(register int j=1;j<=n;++j) {
	    for(register int k=1;k<=n;++k) {
	        ......
	    }
	} 
}
  • inline
    短函数可以前面加上 inline 内联函数,长函数加了会自动屏蔽。
    原理就是它是将程序执行转移到被调用函数所存放的内存地址,将函数执行完后,在返回到执行此函数前的地方,减少资源开销(进栈出栈之类的)。小函数用 inline 是不戳滴。

举一个例子:

inline int lc(int p) {return p<<1;}
inline int rc(int p) {return p<<1|1;}

线段树中的左右儿子经常被调用,所以可以加一个 inline 优化一下。

  • 用库函数 vs 手写库函数
    max ? \max max 举例子。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    发现手写快一些,有兴趣的朋友们也可以测试一下 min ? , a b s \min, abs min,abs 等函数。

咕咕咕

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-08 11:03:10  更:2021-08-08 11:07:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/9 23:50:51-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码