《手写代码必备手册》-编程技巧

1. 把较大的数组放在 main 函数外,作为全局变量,这样可以防止栈溢出,因为栈的大
小是有限制的。
2. 如果能够预估栈,队列的上限,则不要用 stack, queue,使用数组来模拟,这样速
度最快。
3. 输入数据一般放在全局变量,且在运行过程中不要修改这些变量。
4. 在判断两个 浮点数 a 和 b 是否相等时,不要用 a==b,应该判断二者之差的绝对值
fabs(a-b) 是否小于某个阈值,例如 1e-9。
5. 判断一个整数是否是为奇数,用 x % 2 != 0,不要用 x % 2 == 1,因为 x 可能是
负数。
6. 用 char 的值作为数组下标(例如,统计字符串中每个字符出现的次数),要考虑到
char 可能是负数。有的人考虑到了,先强制转型为 unsigned int 再用作下标,这仍然
是错的。正确的做法是, 先强制转型为 unsigned char,再用作下标。这涉及 C++ 整型

提升的规则,就不详述了。

c++中的char(字符)可以直接当做数字用,比如:

int a[300];
char c='a';
a[c]=...;

你可能感兴趣的:(笔试)