当前位置:编程学习 > C/C++ >>

[互联网面试笔试汇总C/C++-1] 搜狗笔试-1

1.找出下列程序中的错误:
[cpp]  
"a.c":  
  
int global_1 = 100;  
"b.c":  
  
extern int global_1;  
int global_2 = global_1 * 2;  
int main(){ return 0;}  
 
解答:乍一看以为是extern的问题,但是实际上并不是这个问题,问题出在下面这句话
[cpp] 
int global_2 = global_1 * 2;  
这里面global_1是全局变量,global_2也是全局变量,不能用一个全局变量去初始化另一个全局变量,可以改成如下形式。
[cpp]  
extern int global_1;  
int global_2 = 0;  
  
int main()  
{  
    global_2 = global_1 * 2;  
    return 0;  
}  
 
2.找出下列程序中的错误:
[cpp]  
a.c  
void foo(int);  
  
b.cpp  
#include "a.c"  
int main(){  
     foo(10);  
     return 0;  
}   
这个题目是考察C++调用C函数的,需要在使用的时候加入下面的语句:
[cpp]  
extern "C" void foo(int);  
 
补充:软件开发 , C语言 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,