久久久久无码精品,四川省少妇一级毛片,老老熟妇xxxxhd,人妻无码少妇一区二区

嵌入式軟件面試題

時(shí)間:2024-10-02 06:45:46 嵌入式培訓(xùn) 我要投稿
  • 相關(guān)推薦

2017年嵌入式軟件面試題

  嵌入式系統(tǒng)是當(dāng)前最熱門、最具發(fā)展前途的IT應(yīng)用領(lǐng)域之一。那么關(guān)于嵌入式工程師考試你知道多少呢?下面跟yjbys小編一起來看看吧!

2017年嵌入式軟件面試題

  1、請寫出你所知道的C語言關(guān)鍵字。

  auto :聲明自動(dòng)變量

  switch :用于開關(guān)語句

  case:開關(guān)語句分支

  break:跳出當(dāng)前循環(huán)

  default:開關(guān)語句中的“其它”分支

  continue:結(jié)束當(dāng)前循環(huán),開始下一輪循環(huán)

  goto:無條件跳轉(zhuǎn)語句

  do :循環(huán)語句的循環(huán)體

  while :循環(huán)語句的循環(huán)條件

  if:條件語句

  else :條件語句否定分支(與 if 連用)

  enum :聲明枚舉類型

  union:聲明共用數(shù)據(jù)類型

  extern:聲明變量是在其它文件中聲明

  for:一種循環(huán)語句

  register:聲明寄存器變量

  return :子程序返回語句(可以帶參數(shù),也可不帶參數(shù))循環(huán)條件

  sizeof:計(jì)算數(shù)據(jù)類型長度

  static :聲明靜態(tài)變量

  struct:聲明結(jié)構(gòu)體變量或函數(shù)

  typedef:用以給數(shù)據(jù)類型取別名

  unsigned:聲明無符號類型變量或函數(shù)

  void :聲明函數(shù)無返回值或無參數(shù),聲明無類型指針

  volatile:說明變量在程序執(zhí)行中可被隱含地改變

  short :聲明短整型變量或函數(shù)

  signed:聲明有符號類型變量或函數(shù)

  char :聲明字符型變量或函數(shù)

  float:聲明浮點(diǎn)型變量或函數(shù)

  int: 聲明整型變量或函數(shù)

  long :聲明長整型變量或函數(shù)

  const :聲明只讀變量

  double :聲明雙精度變量或函數(shù)

  2、IPv4把所有的IP地址分為A、B、C、D、E五類。請寫出B類地址和C類地址的范圍和掩碼,D類地址的用途是什么?

  分類 前綴碼 開始地址 結(jié)束地址 對應(yīng)CIDR修飾 默認(rèn)子網(wǎng)掩碼

  A類地址 0 0.0.0.0 127.255.255.255 /8 255.0.0.0

  B類地址 10 128.0.0.0 191.255.255.255 /16 255.255.0.0

  C類地址 110 192.0.0.0 223.255.255.255 /24 255.255.255.0

  D類地址 (群播) 1110 224.0.0.0 239.255.255.255 /4 未定義

  E類地址 (保留) 1111 240.0.0.0 255.255.255.255 /4 未定義

  3、請簡述在linux中多進(jìn)程程序和多線程程序的區(qū)別。

  4、列出目前l(fā)inux系統(tǒng)能支持的文件系統(tǒng),列舉常用的四個(gè)以上。

  Ext3 ext4 jffs2 yffs2 ubifs cramfs

  5、寫一個(gè)“標(biāo)準(zhǔn)”宏MIN,這個(gè)宏輸入兩個(gè)參數(shù)并返回較小的一個(gè)?

  #define MIN(a, b) ( (a) <= (b) : (a) ? (b) )

  6、什么是MMU,MMU的作用?

  MMU是Memory Management Unit的縮寫,負(fù)責(zé)虛擬地址到物理地址的轉(zhuǎn)換,提供硬件機(jī)制的內(nèi)存訪問授權(quán)。

  7、關(guān)鍵字volatile有什么含義,并給出幾個(gè)應(yīng)用場合。

  1. 定義的變量應(yīng)該是異變的,防止編譯器優(yōu)化,使得程序直接存取原始內(nèi)存地址。

  2. 中斷服務(wù)程序中修改的供其它程序檢測的變量需要加volatile。

  3. 多任務(wù)環(huán)境下各任務(wù)間共享的標(biāo)志應(yīng)該加volatile。

  4. 存儲器映射的硬件寄存器通常也要加voliate,因?yàn)槊看螌λ淖x寫都可能有不同意義。

  5. 頻繁地使用volatile很可能會增加代碼尺寸和降低性能。

  8、雙向鏈表操作題:

  /*節(jié)點(diǎn)定義*/

  typedef srruct node

  {

  struct node *next;

  struct node *previous;

  }NODE;

  /*鏈表定義*/

  typedef struct

  {

  NODE node;

  int count;

  } LIST;

  #define HEAD node.next

  #define TALL node.previous

  /*初始化一個(gè)鏈表*/

  void lstInit (LIST *pList)

  {

  pPlist->HEAD=NULL;

  pPlist->TALL=NULL;

  pPlist->count=0;

  }

  請編寫函數(shù)把一個(gè)節(jié)點(diǎn)(pNode)插入鏈表pList中某個(gè)節(jié)點(diǎn)(pPrev)之后。

  9、請寫出strcpy 和 memcpy 的區(qū)別

  1、strcpy和memcpy都是標(biāo)準(zhǔn)C庫函數(shù)。

  2、strcpy提供了字符串的復(fù)制。即strcpy只用于字符串復(fù)制,并且它不僅復(fù)制字符串內(nèi)容之外,還會復(fù)制字符串的結(jié)束符。

  3、strcpy函數(shù)的原型是:char* strcpy(char* dest, const char* src);

  4、memcpy提供了一般內(nèi)存的復(fù)制。即memcpy對于需要復(fù)制的內(nèi)容沒有限制,因此用途更廣。

  5、memcpy函數(shù)的原型是:void *memcpy( void *dest, const void *src, size_t count );

  strcpy和memcpy主要有以下3方面的區(qū)別。

  5.1、復(fù)制的內(nèi)容不同。strcpy只能復(fù)制字符串,而memcpy可以復(fù)制任意內(nèi)容,例如字符數(shù)組、整型、結(jié)構(gòu)體、類等。

  5.2、復(fù)制的方法不同。strcpy不需要指定長度,它遇到被復(fù)制字符的串結(jié)束符"\0"才結(jié)束,所以容易溢出。memcpy則是根據(jù)其第3個(gè)參數(shù)決定復(fù)制的長度。

  5.3、用途不同。通常在復(fù)制字符串時(shí)用strcpy,而需要復(fù)制其他類型數(shù)據(jù)時(shí)則一般用memcpy。

  6、實(shí)現(xiàn)原型:

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

  {

  if((strDest == NULL) || (strSrc == NULL))

  return NULL;

  char* strDestCopy = strDest;

  while( ( *strDest++ = *strSrc++ ) != '/0' );

  return strDestCopy;

  }

  void *memcpy(void *dest, const void *src, size_t count)

  {

  char *tmp = dest;

  const char *s = src;

  while (count--)

  *tmp++ = *s++;

  return dest;

  }


【嵌入式軟件面試題】相關(guān)文章:

嵌入式C語言面試題(附答案)03-17

嵌入式軟件開發(fā)要學(xué)什么03-05

注釋嵌入式軟件的十大技巧03-19

嵌入式軟件工程師認(rèn)證03-03

2016年嵌入式工程師面試題及答案「精選」03-07

嵌入式系統(tǒng)軟件開發(fā)技術(shù)概述03-21

2016最新公司嵌入式考試面試題庫03-04

嵌入式軟件工程師經(jīng)典筆試題03-06

移植開源軟件到嵌入式Linux系統(tǒng)技術(shù)攻略03-29