|
嵌入式CC++專(zhuān)項測試題 看下自己的水平如何
眾所周知,時(shí)下嵌入式工程師可是一個(gè)熱門(mén)崗位。但是我們要想找到一份高薪的嵌入式方面的工作也不是那么容易的,尤其是現在一些企業(yè)的面試題總是那么千奇百怪。面對這一問(wèn)題,華清遠見(jiàn)為大家匯總了一些嵌入式C/C++方面的專(zhuān)項測試題,希望可以對大家有所幫助。溫馨提示,試題尾部有參考答案哦!
1、在linux+gcc下,關(guān)于以下代碼,不正確的是____。
std::string& test_str()
{
std::string str="test";
return str;
}
int main()
{
std::string& str_ref=test_str();
std::cout<
return 0;
}
A 編譯警告
B 返回局部變量的引用,運行時(shí)出現未知錯誤
C 正常編譯且運行
D 把代碼里的&都去掉之后,程序可以正常運行
2、假定一個(gè)二維數組的定義語(yǔ)句為“int a[3][4]={{3,4},{2,8,6}};”,則元素a[2][1]的值為_(kāi)___。
A 0
B 4
C 8
D 6
3、下面哪一個(gè)是sort的template的正確寫(xiě)法
A void sort(class A first,class A last,class B pred)
B void template(class A,class B)sort(A first,A last,B pred)
C template void sort(A first,A last,B pred)
D template void sort(A first,A last,B pred)
4、下面說(shuō)法正確的是
A C++已有的任何運算符都可以重載
B const對象只能調用const類(lèi)型成員函數
C 構造函數和析構函數都可以是虛函數
D 函數重載返回值類(lèi)型必須相同
5、若有下面的函數調用:
? fun(a+b,?3,?max(n-1,?b));?其中實(shí)參的個(gè)數是____。
A 3
B 4
C 5
D 6
6、兩個(gè)等價(jià)線(xiàn)程并發(fā)的執行下列程序,a為全局變量,初始為0,假設printf、++、--操作都是原子性的,則輸出肯定不是哪個(gè)?
void foo() {
if(a <= 0) {
a++;
}
else {
a--;
}
printf("%d", a);
}
A 01
B 10
C 12
D 22
7、在32位操作系統gcc編譯器環(huán)境下,下面程序的運行結果為_(kāi)___。
#include
using namespace std;
class A {
public:
int b;
char c;
virtual void print() {
cout << "this is father’s fuction! " << endl;
}
};
class B: A {
public:
virtual void print() {
cout << "this is children’s fuction! " << endl;
}
};
int main(int argc, char * argv[]) {
cout << sizeof(A) << "" << sizeof(B) << endl;
return 0;
}
A 8 8
B 9 9
C 12 12
D 12 16
8、重載(overload)和重寫(xiě)(override)的區別?
A 重載:是指允許存在多個(gè)同名函數,而這些函數的參數表不同
B 重載:是指子類(lèi)重新定義復類(lèi)虛函數的方法
C 重寫(xiě):是指子類(lèi)重新定義復類(lèi)虛函數的方法
D 重寫(xiě):是指允許存在多個(gè)同名函數,而這些函數的參數表不同
參考答案:1~8:C A D B A A C AC
免費試聽(tīng)C語(yǔ)言、電子、PCB、STM32、Linux、FPGA、JAVA、安卓等。
想學(xué)習的你和我聯(lián)系預約就可以免費聽(tīng)課了。
宋工企鵝號:三五二四六五九零八八 Tel:173--1795--1908
|
|