C复习
PART 1-输入输出语句
1.1 scanf()
■返回值:>0指成功读入了多少项数据
=0指没有读入数据
EOF指结束,Windows是CTRL+Z
1.2 printf()
■返回值:成功输出的字符数,负值为出错
■注意空格,%c 与 %s 的区别
■其他一些输入输出格式
%d 十进制+有符号+整型(注意负数) %p 地址
%u 十进制+无符号+整型
%x 小写字符+16进制 %X 大写字符+16进制
PART 2-位运算
有时我们需要对某个整数类型变量中的某一位( bit)进行操作,比如,判断某一位是否为1, 或只改变其中某一位,而保持其他位都不变。 C/C++ 语言提供了“位运算”的操作,能够做到类似的操作
2.1 按位与 &
■用法:一对一,均为1时才为1
■功能:将变量中的某些位清0(毕竟为1的条件很苛刻)、保留某些位不变
■例如:如果需要将int型变量n的低8位全置成0, 而其余位不变,则可以执行: n = n & 0xffffff00; 也可以写成: n &= 0xffffff00;
2.2 按位或 |
■用法:一对一,均为0时才为0
■功能:将变量中的某些位变为1(毕竟为0的条件很苛刻)、保留某些位不变
■例如:如果需要将int型变量n的低8位全置成0, 而其余位不变,则可以执行:n|=0xff
2.3 按位异或 ^
■功能:将参与运算的两操作数各对应的二进制位进 行异或操作,即只有对应的两个二进位不相同时, 结果的对应二进制位才是 1,否则为0。
2.4 按位非 ~
■功能:0变1,1变0
2.5 左移&右移
■功能:左移×2,右移÷2
PART 3-函数指针
3.1 qsort函数
3.2 动态内存分配
如果是用new动态分配了一个数组,那么,释放该数组的时候,应以如下形式使用 delete 运 算符: delete [] 指针;
示例 int * p = new int[20]; p[0] = 1; delete [] p;
PART 3-命令行参数
PART 4-标准库函数
4.1 数学函数<math.h>
4.2字符处理函数<ctype.h>
PART 5-习惯
5.1 标识符命名
# 变量的名字前,+有特殊含义的小写字母,且这个变量第一个字母用大写字母
eg:cPen是指char类型的变量
# 常用的:c——char ; n—— short ; b——取值只为0或1的变量 ; f—— float ; p——指针,x_——参数
#常量&宏大写
#函数名字,每个单词首字母大写,“动词+名词” eg:void PrintMessage();
#结构体定义+S,类定义+C eg:struct SStu{}; class CPen{};
#单词的复数形式容易理解
#对于返回值只为0&1的,加前缀Is eg:IsCanceled
#获取某个值的函数,加Get前缀 eg:char *GetFileName();
#设置某个值的函数,加Set前缀 eg:void SetMaxVolume();
5.2 书写格式
#注意缩进
#括号的使用,更简洁~