一级日韩免费大片,亚洲一区二区三区高清,性欧美乱妇高清come,久久婷婷国产麻豆91天堂,亚洲av无码a片在线观看

寫(xiě)樹(shù)的作文怎么寫(xiě)

時(shí)間:2025-09-23 13:18:43 樹(shù) 我要投稿

寫(xiě)樹(shù)的作文怎么寫(xiě)

  這是當時(shí)面創(chuàng )維數字的筆試題,題目比較簡(jiǎn)單,只涉及到了基本的C語(yǔ)法,沒(méi)有考到數據結構以及算法,試題在前面說(shuō)明這套題并不能反映應聘者實(shí)際的軟件開(kāi)發(fā)及編程能力。

寫(xiě)樹(shù)的作文怎么寫(xiě)

  一、請填寫(xiě)BOOL , float, 指針變量 與“零值”比較的 if 語(yǔ)句。(10分)

  請寫(xiě)出 BOOL flag 與“零值”比較的 if 語(yǔ)句。

  if ( flag )

  if ( !flag )

  請寫(xiě)出 float x 與“零值”比較的 if 語(yǔ)句。

  const float EPSINON = 0.00001;

  if ((x >= - EPSINON) && (x 不可將浮點(diǎn)變量用“==”或“!=”與數字比較,應該設法轉化成“>=”或“請寫(xiě)出 char *p 與“零值”比較的 if 語(yǔ)句。

  if (p == NULL)

  if (p != NULL)

  二、以下為Windows NT下的32位C++程序,請計算sizeof的值(10分)

  char str[] = NT下的32位C++程char *p = str ;

  int n = 10;

  請計算

  sizeof (str ) = 6 (2分)

  sizeof ( p ) = 4 (2分)

  sizeof ( n ) = 4

  void Func ( char str[100])

  {

  請計算

  sizeof( str ) = 4 (2分)

  }

  void *p = malloc( 100 );

  請計算

  sizeof ( p ) = 4 (2分)

  三、簡(jiǎn)答題(25分)

  1、頭文件中的 ifndef/define/endif 干什么用 (5分)

  答:防止該頭文件被重復引用。

  2、#include 和 #include “filename.h” 有什么區別 (5分)

  答:對于#include ,編譯器從標準庫路徑開(kāi)始搜索 filename.h

  對于#include “filename.h” ,編譯器從用戶(hù)的工作路徑開(kāi)始搜索 filename.h

  3、const 有什么用途 (請至少說(shuō)明兩種)(5分)

  答:(1)可以定義 const 常量

  (2)const可以修飾函數的參數、返回值,甚至函數的定義體。被const修飾的東西都受到強制保護,可以預防意外的變動(dòng),能提高程序的健壯性。

  4、在C++ 程序中調用被 C編譯器編譯后的函數,為什么要加 extern “C” (5分)

  答:C++語(yǔ)言支持函數重載,C語(yǔ)言不支持函數重載。函數被C++編譯后在庫中的名字與C語(yǔ)言的不同。假設某個(gè)函數的原型為: void

  foo(int x, int y);該函數被C編譯器編譯后在庫中的名字為_(kāi)foo,而C++編譯器則會(huì )產(chǎn)生像_foo_int_int之類(lèi)的名字。C++提供了C連接交換指定符號extern“C”來(lái)解決名字匹配問(wèn)題。

  四、有關(guān)內存的思考題(每小題5分,共20分)

  一.

  void GetMemory(char *p)

  {

  p = (char *)malloc(100);

  }

  void Test(void)

  {

  char *str = NULL;

  GetMemory(str);

  strcpy(str, "hello world");

  printf(str);

  }

  請問(wèn)運行Test函數會(huì )有什么樣的結果

  答:試題傳入GetMemory( char *p )函數的形參為字符串指針,在函數內部修改形參并不能真正的改變傳入形參的值,執行完 char*str = NULL; GetMemory( str ); 后的str仍然為NULL;

  二.

  char *GetMemory(void)

  {

  char p[] = "hello world";

  return p;

  }

  void Test(void)

  {

  char *str = NULL;

  str = GetMemory();

  printf(str);

  }

  請問(wèn)運行Test函數會(huì )有什么樣的結果

  答:可能是亂碼。 char p[] = "hello world";

  return p;

  的p[]數組為函數內的局部自動(dòng)變量,在函數返回后,內存已經(jīng)被釋放。這是許多程序員常犯的錯誤,其根源在于不理解變量的生存期。

  三.

  void GetMemory2(char **p, int num)

  {

  p = (char *)malloc(num);

  }

  void Test(void)

  {

  char *str = NULL;

  GetMemory(&str, 100);

  strcpy(str, "hello");

  printf(str);

  }

  請問(wèn)運行Test函數會(huì )有什么樣的結果

  答:

  (1)能夠輸出hello (2 )Test函數中也未對malloc的內存進(jìn)行釋放。(3)GetMemory避免了試題1的問(wèn)題,傳入GetMemory的參數為字符串指針的指針,但是在GetMemory中執行申請內存及賦值語(yǔ)句

  p = (char *) malloc( num );后未判斷內存是否申請成功,應加上: if ( *p == NULL ) {.../pic/p>

  }

  四.

  void Test(void)

  {

  char *str = (char *) malloc(100);

  strcpy(str, *) malloc free(str);

  if(str != NULL)

  {

  strcpy(str, ) orld stprintf(str);

  }

  }

  請問(wèn)運行Test函數會(huì )有什么樣的結果

  答:執行 char *str = (char *) malloc(100); 后未進(jìn)行內存是否申請成功的判斷;另外,在free(str)后未置str為空,導致可能變成一個(gè)“野”指針,應加上: str = NULL;

  五、編寫(xiě)strcpy函數(10分)

  已知strcpy函數的原型是

  char *strcpy(char *strDest, const char *strSrc);

  其中strDest是目的字符串,strSrc是源字符串。

  (1)不調用C++/C的字符串庫函數,請編寫(xiě)函數 strcpy

  char *strcpy(char *strDest, const char *strSrc);

  {

  assert((strDest!=NULL) && (strSrc !=NULL)); /pic/p>

  char *address = strDest; /pic/p>

  while( (*strDest++ = * strSrc++) != ‘\0’ ) /pic/p>

  NULL ;

  return address ; /pic/p>

  }

  (2)strcpy能把strSrc的內容復制到strDest,為什么還要char * 類(lèi)型的返回值

  答:為了實(shí)現鏈式表達式。 /pic/p>

  例如 int length = strlen( strcpy( strDest, “hello world”) );

  六、編寫(xiě)類(lèi)String的構造函數、析構函數和賦值函數(25分)

  已知類(lèi)String的原型為:

  class String

  {

  public:

  String(const char *str = NULL); /pic/p>

  String(const String &other); /pic/p>

  ~ String(void); /pic/p>

  String & operate =(const String &other); /pic/p>

  private:

  char *m_data; /pic/p>

  };

  請編寫(xiě)String的上述4個(gè)函數。

  標準答案:

  /pic/p>

  String::~String(void) /pic/p>

  {

  delete [] m_data;

  /pic/p>

  }

  /pic/p>

  String::String(const char *str) /pic/p>

  {

  if(str==NULL)

  {

  m_data = new char[1]; /pic/p>

  *m_data = w char[1]; /pic/p>

  else

  {

  int length = strlen(str);

  m_data = new char[length+1]; /pic/p>

  strcpy(m_data, str);

  }

  }

  /pic/p>

  String::String(const String &other) /pic/p>

  {

  int length = strlen(other.m_data);

  m_data = new char[length+1]; /pic/p>

  strcpy(m_data, other.m_data);

  }

  /pic/p>

  String & String::operate =(const String &other) /pic/p>

  {

  /pic/pic/p>

  if(this == &other)

  return *this;

  /pic/pic/p>

  delete [] m_data;

  /pic/pic/p>

  int length = strlen(other.m_data);

  m_data = new char[length+1]; /pic/p>

  strcpy(m_data, other.m_data);

  /pic/pic/p>

  return *this;

【寫(xiě)樹(shù)的作文怎么寫(xiě)】相關(guān)文章:

寫(xiě)樹(shù)的作文01-09

寫(xiě)樹(shù)的作文12-16

樹(shù)的成長(cháng)作文怎么寫(xiě)(通用19篇)02-18

寫(xiě)樹(shù)作文作文12-16

寫(xiě)冬天樹(shù)的作文04-08

寫(xiě)樹(shù)的作文(精選32篇)03-28

【精選】寫(xiě)樹(shù)的作文三篇12-13

去年的樹(shù)續寫(xiě)01-20

桃花作文怎么寫(xiě)07-11

生命的作文怎么寫(xiě)07-08

  • 相關(guān)推薦
一级日韩免费大片,亚洲一区二区三区高清,性欧美乱妇高清come,久久婷婷国产麻豆91天堂,亚洲av无码a片在线观看