亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

C程序找錯(cuò)題

時(shí)間:2022-12-08 06:31:08 筆試題目 我要投稿
  • 相關(guān)推薦

C程序找錯(cuò)題

找錯(cuò)題

  試題1:

  void test1()

  {

  char string[10];

  char* str1 = "0123456789";

  strcpy( string, str1 );

  }

  復(fù)制代碼

  試題2:

  void test2()

  {

  char string[10], str1[10];

  int i;

  for(i=0; i<10; i++)

  {

  str1 = 'a';

  }

  strcpy( string, str1 );

  }

  復(fù)制代碼

  試題3:

  void test3(char* str1)

  {

  char string[10];

  if( strlen( str1 ) <= 10 )

  {

  strcpy( string, str1 );

  }

  }

  復(fù)制代碼

  解答:

  試題1字符串str1需要11個(gè)字節(jié)才能存放下(包括末尾的’\0’),而string只有10個(gè)字節(jié)的空間,strcpy會導(dǎo)致數(shù)組越界;

  對試題2,如果面試者指出字符數(shù)組str1不能在數(shù)組內(nèi)結(jié)束可以給3分;如果面試者指出strcpy(string, str1)調(diào)用使得從str1[url=]內(nèi)存[/url]起復(fù)制到string內(nèi)存起所復(fù)制的字節(jié)數(shù)具有不確定性可以給7分,在此基礎(chǔ)上指出庫函數(shù)strcpy工作方式的給10分;

  對試題3,if(strlen(str1) <= 10)應(yīng)改為if(strlen(str1) < 10),因?yàn)閟trlen的結(jié)果未統(tǒng)計(jì)’\0’所占用的1個(gè)字節(jié)。

  剖析:

  考查對基本功的掌握:

  (1)字符串以’\0’結(jié)尾;

  (2)對數(shù)組越界把握的敏感度;

  (3)庫函數(shù)strcpy的工作方式,如果編寫一個(gè)標(biāo)準(zhǔn)strcpy函數(shù)的總分值為10,下面給出幾個(gè)不同得分的答案:
 

【C程序找錯(cuò)題】相關(guān)文章:

C程序員實(shí)習(xí)日記05-29

C語言程序設(shè)計(jì) (一)05-11

C語言程序設(shè)計(jì)學(xué)習(xí)技巧08-30

C++程序員崗位職責(zé)05-06

c程序設(shè)計(jì)心得體會04-03

C程序員英文簡歷表格06-06

學(xué)習(xí)二級c語言程序設(shè)計(jì)的方法08-30

名企招聘c++程序員筆試題07-31

C++程序員英文簡歷表格06-04

名企招聘C++程序員筆試題及分析07-31