1.千字节(kB)、比特(bit)与字节(Byte)之间的关系?
1kB=1024B
1B=8bit
2.声明与定义?
定义就是(编译器)创建一个对象,为这个对象分配一块内存并给它取上一个名字,这个名字就是我们经常说的变量名或对象名。
声明有两重含义:
(1)告诉编译器,这个名字已经匹配到一块内存上了
(2)告诉编译器,这个名字已经预定了,别的地方再也不能用它作为或对象名变量名
3.typedef与#define的问题?
通常来讲,typedef要比#define要好,typedef不是简单的文本替换
4.i++与++i的区别?
(1)i++返回原来的值,++i返回加1后的值
(2)I++不能作为左值,而++i可以
5.二进制、八进制、十六进制的前缀?
二进制:0b
八进制:0
十六进制:0x
6.数据类型及其大小
类型 数的范围 字节数
int -2^31~(2^31-1) 4
unsigned int 0~65536(2^16-1) 4
short int -32718~32767 2
unsigned short int 0~65536 2
long int -2^31~(2^31-1) 4
unsigned long 0~(2^32-1) 4
char -128~127 1
unsigned char 0~255 1
7.运算符优先级
!>算术运算符>关系运算符>&&>赋值运算符
8.形参与实参
形参变量是属于被调函数的局部变量,实参变量是属于主调函数的局部变量
9.局部变量与全局变量
局部变量实在函数内作定义说明的,其作用域仅限于函数内,离开该函数后再使用这种变量是非法的。
全局变量是函数外部的变量,其作用域为整个源程序。
10.void类型
用保留字void表示的数据类型有两种完全相反的意思,可以表示没有数据,也可以表示某种任意类型的数据。
void表示空类型,void*表示任意数据的指针类型,程序如要使用void*类型的数据,应该将它强制地转换成某种具体的指针类型。