欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

C語(yǔ)言

C語(yǔ)言試題

時(shí)間:2025-01-23 02:02:06 C語(yǔ)言 我要投稿

C語(yǔ)言試題

  1.函數(shù)指針申明時(shí)可以不用確定參數(shù)類型,只需要在定義和使用時(shí)帶上參數(shù)類型即可。參考《func1.c》

C語(yǔ)言試題

  main()

  {

  int f();

  int i,a,b;

  int (*p)();

  scanf("%d",&a);

  p=f;

  for(i=1;i<9;i++)

  {

  printf("Please Input The %d Number:",i);

  scanf("%d",&b);

  a=(*p)(a,b);

  }

  printf("The Max Number is:%d",a);

  }

  f(int x,int y)

  {

  int z;

  z=(x>y)?x:y;

  return z;

  }

  2.數(shù)組指針與指針數(shù)組:數(shù)組指針int (*a)[10],指向數(shù)組的指針,指針數(shù)組int *a[10],包含10個(gè)指針的數(shù)組。

  3.char *p1="I love you";和char p2[]="I love you";區(qū)別:字符串存放的位置不同,讀寫屬性不同。指針p1指向的字符串位于內(nèi)存的只讀區(qū),不可改變,數(shù)組p2的字符串位于堆棧中,可讀可寫,可以改變。

  4.C語(yǔ)言的extern和static是對(duì)立的關(guān)鍵字。

  5.strcpy,memcpy,strcat等str函數(shù)返回值都是char *.

  6.一般的,如果想讓if判斷一個(gè)變量的“真”、“假”,應(yīng)直接使用if(var)、if(!var),表明其為“邏輯”判斷;如果用if判斷一個(gè)數(shù)值型變量(short、int、long等),應(yīng)該用if(var==0),表明是與0進(jìn)行“數(shù)值”上的比較;而判斷指針則適宜用if(var==NULL),這是一種很好的編程習(xí)慣。

  7.結(jié)構(gòu)體數(shù)組和鏈表很相似,如果不需要中間插入元素,可以優(yōu)先考慮用結(jié)構(gòu)體數(shù)組。

  8.extern "C"作用:實(shí)現(xiàn)在C++中調(diào)用C函數(shù)。

  例如:

  /*C語(yǔ)言頭文件example.h*/

  #ifndef EXAMPLE_H

  #define EXAMPLE_H

  extern int add(int x,int y);

  /*C語(yǔ)言實(shí)現(xiàn)文件example.c*/

  int add(int x,int y)

  {

  return (x)+(y);

  }

  /*C++實(shí)現(xiàn)文件,調(diào)用add(),example.cpp*/

  9.宏實(shí)現(xiàn)函數(shù)功能在參數(shù)有自增自減操作時(shí)有副作用

  代碼:

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

  test10()

  {

  int x=3;

  int y=8;

  printf("MIN:%d\n",MIN(x++,y));

  }

  輸出: MIN:4

  extern "C"

  {

  #include "example.h"

  }

  int main(int argc,char *argv[])

  {

  add(2,3);

  return 0;

  }

  實(shí)際上extern "C"是表明下面的申明編譯時(shí)按照C語(yǔ)言的方式處理,不要做優(yōu)化,如果沒(méi)有extern "C",在C++中將會(huì)對(duì)申明的函數(shù)名處理,上例中就會(huì)是add_int_int類似的函數(shù)名。

  9.static 在函數(shù)內(nèi)部,表示該變量的值在各個(gè)調(diào)用間一直保持延續(xù)性;

  在函數(shù)這一級(jí),表示該函數(shù)只對(duì)本文件可見(jiàn)

  10.文件存在判斷 -access

  access函數(shù)用于判斷文件權(quán)限,用F_OK模式可以判斷文件是否存在。

  If(0 == access(*filename,F_OK))

  文件存在時(shí)的操作

  11.位寬可變的printf輸出

  int i;

  printf("12345678901234567890\n");

  for(i=10;i>0;i--)

  pirntf("%*s",i,"*\n");

  12.程序在內(nèi)存中的分段

  存儲(chǔ)態(tài):

  代碼段:存放可執(zhí)行代碼,變量和申明是不可執(zhí)行的。字符串常量也存放在此。

  數(shù)據(jù)段:包含靜態(tài)初始化的數(shù)據(jù),有初值的全局變量和static變量存放在此。

  BSS段:存放未初始化的全局變量和靜態(tài)變量。

  運(yùn)行態(tài)還有stack和heap段。stack段存放局部變量、函數(shù)形參和返回值,heap段用于內(nèi)存的動(dòng)態(tài)分配。

  13.C語(yǔ)言中,僅有4種基本數(shù)據(jù)類型-整型,浮點(diǎn)型,指針和聚合類型(如數(shù)組和指針等).

  整型:字符,短整型,整型和長(zhǎng)整型.每一種都有有符號(hào)和無(wú)符號(hào)兩種.

  14.指針和指針變量區(qū)別?

  變量存儲(chǔ)于計(jì)算機(jī)的內(nèi)存中,每個(gè)變量都占據(jù)一個(gè)特定的位置.每個(gè)內(nèi)存位置都由地址唯一確定并引用,就像一條街道的房子由他們的門牌號(hào)碼標(biāo)識(shí)一樣.指針只是地址的另一個(gè)名字罷了.指針變量就是一個(gè)其值為另外一個(gè)(一些)內(nèi)存地址的變量.

  15.指針和數(shù)組區(qū)別?

  指針使用必須賦初值,數(shù)組使用可以不用賦初值;指針的地址可以輕易改變,數(shù)組的首地址不會(huì)改變。

【C語(yǔ)言試題】相關(guān)文章:

C語(yǔ)言試題08-02

C語(yǔ)言試題11-01

C語(yǔ)言程序試題04-26

C語(yǔ)言試題大全08-06

C語(yǔ)言試題及答案07-26

C語(yǔ)言練習(xí)試題07-01

c語(yǔ)言經(jīng)典筆試題10-06

C語(yǔ)言試題訓(xùn)練08-07

C語(yǔ)言考點(diǎn)試題08-19