問幾個C語言的問題

2022-11-19 03:56:25 字數 1162 閱讀 5057

1樓:匿名使用者

pf是一個指標,*pf代表它所指向變數的值。

假設有int a=10;int *pf=&a;

則pf==&a(變數a的地址,一般是0x打頭的十六進位制數),*pf==a(變數a的值,這裡是10)。

while(*pf)相當於while(*pf!=0),因為後者需要先計算*pf的值,然後再計算*pf!=0的值,和前者相比執行效率就差了一些,所以可以省略"!

=0"而直接用*pf的值來控制迴圈體的執行。

2樓:魔法師00可可

while()是用於迴圈判斷的

如果條件成立,就執行while中的迴圈體語句如while(*pf)就是指當 指標 pf 所指向的空間不為空 或 空間 的值 不為 0時

執行 while 下 的 {}中語句,或第一句(不含{})

3樓:匿名使用者

while()語句就是當括號裡的東西非負是就執行 但括號裡的數為0時就語句結束 不執行了 而while(*pf)就是當*pf為非負是執行 為0時不執行while語句

4樓:匿名使用者

while(表示式)

如果表示式為真(非0),則迴圈順序執行語句123.....,直到表示式為假(0)

if(表示式)

如果表示式為真(非0),則順序執行語句123......

if(i%2)

表示式為i%2(i必須為整形),表示i除以2的值(i對2求模),此表示式只能有1、0兩個值,如果為真(1)則執行緊跟著的語句或語句塊,否則跳過緊跟著的語句或語句塊({}括起來為語句塊)。

5樓:

if(i%2)與if(i%2!=0)等價,即當i不能被2整除時執行if子句然後結束if結構的執行,否則跳過if去執行與之相匹配的else子句(若無else,則if結構到此結束)

如if(i%2)

語句1;//if子句

else

語句2;//else子句

語句3;//if結構的下一條語句

若i==1,則依次執行語句1,語句3;若i==2,則依次執行語句2,語句3.

6樓:丨天灬嬌子

if(i%2)可以這樣理解:

if(i%2==0)

···else···

有關C語言的幾個問題,有關C語言幾個問題

1 不能,通不過編繹的。2 可以根據返回一個標誌來實現跳轉。如int fun 如果成功就返回1,否則返回0。看來樓主對函式理解還不夠透徹。舉個例子吧 int fun int a,int b 就像上面那個,其中括號內的int a和int b表示這個函式需要傳入引數兩個,並且這兩個引數為int型別,第一...

幾個c語言題目請指教,請指教C語言的幾個問題。

1 是對的。abcd 是一個字串常量,這個常量的首字元地址空間賦給了指標變數s,這種操作是允許的。因為s定義成char 實際上就是字元型指標了。沒有必要再加,如果是 char s absd 則又是一種定義方法。2 不行。因為char s只是宣告瞭一個字串指標s,你並沒有讓s指向一塊可使用的空間。直接...

C程式高手進,問幾個C語言方面的基礎問題,即將二級考試了,急求

問題一回答 該樹的深度的確為7層!因為該二叉樹一共有7個結點,而葉子結點 即度為0的結點,也可以說是沒有子樹得結點 只有一個,這說明該二叉樹的形狀是立著的 一 字形結構!即每層只有一個結點!那就是7層!只有這一種解釋,沒有其他情況,否則不可能只有一個葉子結點!問題二回答 表示式1 表示式2 表示式1...