- 3
- 0
- 约2.76万字
- 约 15页
- 2016-09-21 发布于贵州
- 举报
C面试题(方便打印)
面试题1:变量的声明和定义有什么区别
为变量分配地址和存储空间的称为定义,不分配地址的称为声明。一个变量可以在多个地方声明,
但是只在一个地方定义。加入extern修饰的是变量的声明,说明此变量将在文件以外或在文件后面部分
定义。
说明:很多时候一个变量,只是声明不分配内存空间,直到具体使用时才初始化,分配内存空间,
如外部变量。
面试题2:写出bool 、int、 float、指针变量与“零值”比较的if语句
bool型数据:
int型数据:
指针型数:
if( NULL == flag )
float型数据:
if ( ( flag = NORM ) ( flag = NORM ) )
注意:应特别注意在int、指针型变量和“零值”比较的时候,把“零值”放在左边,这样当把“==”
误写成“=”时,编译器可以报错,否则这种逻辑错误不容易发现,并且可能导致很严重的后果。
面试题3:sizeof和strlen的区别
sizeof和strlen有以下区别:
. sizeof是一个操作符,strlen是库函数。
. sizeof的参数可以是数据的类型,也可以是变量,而strlen只能以结尾为‘\0‘的字符串作参数。
. 编译器在编译时就计算出了sizeof的结果。而strlen函数必须在运行时才能计算出
原创力文档

文档评论(0)