1、局部变量能否和全局变量重名?
局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。对于有些编译器而言,在同一个函数可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内。
2、如何引用一个已经定义过的全局变量?
可以引用头文件,或extern关键字。
3、全局变量定义在可被多个,C文件包含的头文件中可不可以?为什么?
可以,但要加static
因为所有定义预设为外部链接,使用static关键字可以把定义改为内部链接(每个单元都有自己内部区域,不会重定义。)
4、语句for(;;)有什么问题?它是什么意思?
死循环,同while(1),这种写法并不规范,可读性差,一般不用。
5、do......while 和 while......do有什么区别?
前一个循环一遍再判断;后一个判断以后循环。
6、static函数和普通函数有什么区别?
只在当前源文件中使用的函数应该说明为内部函数(static),内部函数应该在当前源文件中说明和定义。对于可在当前源文件以外使用的函数,应该在一个头文件中说明,要使用这些函数的源文件要包括这个文件。
7、队列和栈有什么区别?
队列先进先出,栈后进先出。