關於c語言問題關於c語言的問題

2021-03-07 20:01:08 字數 2899 閱讀 9785

1樓:金色潛鳥

void vtaskstartscheduler( void ) privileged_function;

是函式定義,函式名 vtaskstartscheduler,( void ) 表示該函式是無參函式, 前面的 void 表示這個函式無返回值。 privileged_function 是巨集,預編譯期間,執行文字替代, 替代後這部分應形成 函式體。

2樓:完娟居晴波

c2為char型,1位元組

322超過1位元組表示範圍,溢位後截斷為66,即字元'b'的ascii碼值

3樓:麼彰疏凌曉

1、有定義:int

n=0,*p=&n,**q=&p;,則以下選項中,正確的賦值語句是(d)

a.p=1;

b.*q=2;

c.q=p;

d.*p=5;

解:*p為一級指標,其中p為指標的地址,**q為二級指標,其中*q為指標的地址,只能給變數或指標變數賦值,不能給地址賦值,所謂地址,就是由acs碼構成,簡單的說,就是每個人都有一個名字(地址)一樣,目的是要區分每個人(地址中儲存的值)。

2、若有說明:int

n=2,*p=&n,*q=p;,則一下其非法的賦值語句是(d)

a.p=q;

b.*p=*q;

c.n=*q;

d.p=n;

解:同上。

3、有以下程式:

void

fun(char

*a,char

*b)main()

(char

c1='a',c2='a',*p1,*p2;

p1=&c1;

p2=&c2;

fun(p1,p2);

printf("%c%c\n",c1,c2);

}程式執行後的輸出結果是(a)

a.ab

b.aa

c.aa

d.bb

解:這是指標傳值(地址傳值),實參傳給形參,其實就是p1(實參地址)與a(形參地址)共用一個地址,p2與b共用一個地址,a=b並沒有改變地址a中儲存的『a』,而是讓*a指向地址b,進而改變或控制地址b中存放的值,所以c1=『a』不變,而(*a)++,就是字元『a'的asc碼加1,也就是字元『b'那麼地址b中的值就變成了字元『b'。

4、以下程式執行後的輸出結果是___1_1_1_1___

main()

}解:上面的q等於1吧,

當i=1;n[1]+q=n[0]*2+1=0*2+1=1;

i=2;n[2]+q=n[1]*2+1=0*2+1=1;

i=3;n[3]+q=n[2]*2+1=1;

i=4;n[4]+q=1;

5、有如下程式:

#include

main()

若文字檔案f1.txt中原有內容為:good,則執行以上程式後檔案f1.txt中的內容為(c)

a.goodabc

b.abcd

c.abc

d.abcgood

解:簡單的說就是以「w(寫生成)」開啟的檔案,檔案內的原始資料將被刪除。這東西不是一兩句就能解釋清楚。

同學,你的c要好好加油啊,這都是些很基本的問題。

4樓:逢恩柔語

c的函式實際上就是一個**功能模組,完成一定的操作。有些操作並不需要有什麼事先設定的操作物件,如在螢幕上顯示系統的當前時間,就可以寫一個沒有引數的函式把系統時間字串輸出的螢幕上就可以了——類似這樣的需求是很多的,都可以編制無參函式實現。

關於c語言的問題

5樓:已存在這個名字

&是取地址,*是取該地址的值。

第一個是錯誤的函式宣告,這是語法錯誤。

第二個是正確的函式宣告,引數型別是一個指向linklinst的指標。

6樓:暴孝不詞

1.自頂向下、逐步求精

2.空間複雜度

3.c語言

程式檔案的編譯錯誤分哪為兩類

4.可執行程式

5.機器語言

6.obj7.b

7樓:於悠逸呼縱

#include

"conio.h"

#include

"stdio.h"

main()

這樣就對了。

scanf裡面不要亂加空格和一些其他的東西。

8樓:時讓所香

inti=1;

i=(i++)+(++i);結果是i=3,當自增自減運算子用於算術運算時,採用集體統一原則,即i取值在開始時是相同的,在本題中,i集體等於1,第一個括號內結果為1,第二個括號內的結果為2,因此最終結果為3

9樓:牛良檀水

1、使用函式或過程

2、空間複雜度

3、4、機器語言

5、機器語言

6、obj7、b

10樓:蕭芙老婷

答案應該是4

先計算i++,這時候(i++)中的i為1,但是i自增長為2,再計算++i,(++i)中i為3,

所以i=

1+3=4

11樓:滿元修倫庚

答案不好說,這和編譯器有關,因為各個編譯器的運算規則是不一樣的。我機子的結果是4,還好理解。由於圓括號優先順序最高,而且運算順序為從左到右。。

i++是用完再加,++i是加完再用,所以(i++)運算後仍為1,(i++)運算結果為2,故最後相加結果為1+1=2

12樓:伯君雅陸香

****csdn.***

是個學程式設計的好**,中國最大程式設計師**,註冊會員後就可以在裡面提問,測試自己的程式設計能力,拜師等等

歡迎採納!

關於c語言的計算問題,關於c語言的計算問題

這涉及c的細節,我建議你記住 程式中的常量其實也存放在記憶體單元中,c規定運算運算子兩旁同類時運算結果與參與運算的數的型別相同,事實上時 加法器直接處理那兩個記憶體單元中的資料,並將結果送到另一記憶體單元,而這裡的 另一記憶體單元也是兩位元組長,因此他只接收到結果的低二位元組部分 及1的補碼 所以,...

關於c語言for語句的問題,關於C語言for語句的問題

這兩個程式是不同的,for語句在不加大括號情況下只迴圈到之後的一個分號,即前一個程式迴圈體包括printf 輸出為1234 後者迴圈體中不包括printf 執行完for語句後,再執行printf 輸出為5。第一個for迴圈的迴圈體內有一條語句,那就是printf,每次迴圈都要執行一次迴圈體內的語句,...

關於C語言簡單問題,關於C語言一個簡單問題

c語言有兩個標準,c89 89年出的,c99 99年出的c89規定,在任何執行語句之前,在塊的開頭宣告所有區域性變數。在c99以及c 中則沒有這個限制,即在首次使用之前,可在塊的任何位置都可以宣告變數。編譯結果和c語言的編譯器實現有關,你用的可能是較老的c編譯器,只支援c89規定。簡單的講就是老的編...