第一篇:C程序員應(yīng)聘常見(jiàn)面試題深入剖析
C/C++ 程序設(shè)計(jì)員應(yīng)聘常見(jiàn)面試試題深入剖析本文的寫(xiě)作目的并不在于提供C/C++程序員求職面試指導(dǎo),而旨在從技術(shù)上分析面試題的內(nèi)涵。文中的大多數(shù)面試題來(lái)自各大論壇,部分試題解答也參考了網(wǎng)友的意見(jiàn)。
許多面試題看似簡(jiǎn)單,卻需要深厚的基本功才能給出完美的解答。企業(yè)要求面試者寫(xiě)一個(gè)最簡(jiǎn)單的strcpy函數(shù)都可看出面試者在技術(shù)上究竟達(dá)到了怎樣的程度,我們能真正寫(xiě)好一個(gè)strcpy函數(shù)嗎?我們都覺(jué)得自己能,可是我們寫(xiě)出的strcpy很可能只能拿到10分中的2分。讀者可從本文看到strcpy函數(shù)從2分到10分解答的例子,看看自己屬于什么樣的層次。此外,還有一些面試題考查面試者敏捷的思維能力。
分析這些面試題,本身包含很強(qiáng)的趣味性;而作為一名研發(fā)人員,通過(guò)對(duì)這些面試題的深入剖析則可進(jìn)一步增強(qiáng)自身的內(nèi)功。
2.找錯(cuò)題
試題1:
以下是引用片段: void test1()
{
char string[10];
char* str1 = “0123456789”;
strcpy(string, str1);
}
試題2:
以下是引用片段:
void test2()
{
char string[10], str1[10];
int i;
for(i=0;i<10;i++)
{
str1= ''a'';
}
strcpy(string, str1);
}
試題3:
以下是引用片段: void test3(char* str1)
{
char string[10];
if(strlen(str1)<= 10)
{
strcpy(string, str1);
}
}
解答:
試題1字符串str1需要11個(gè)字節(jié)才能存放下(包括末尾的’