**:
printf()輸出表示式的運算順序是由右向左的,不同的編譯系統不一定相同,可以從左到右, 也可從右到左。turbo c,vc++6.0都是按從右到左進行的。
寫出程式的輸出結果:
#include
void main()
用vc++6.0環境執行,輸出結果為:9,10,9,10,對於這個結果我很納悶,為什麼j=10?
原來問題出在n=j++,這個語句相當於:n=j,j=j+1;也就是說程式在本條輸出語句結束以後,才計算j=j+1。於是在程式中增加了一行輸出j的語句:printf("j=%d",j);果然,輸出了j=11。
注意:求值順序是自右至左;
輸出順序還是從左至右.
cout輸出順序:
**:
#include using namespace std;
int a=0;
int fun1( )
; int *ptr=arr;
*(ptr++)+=123;
//printf("%d%d\n",*ptr,*(++ptr));
cout<<*ptr《輸出結果為:7 7 8
若輸出為:
printf("%d%d\n",*ptr,*(++ptr));
輸出結果:8 8
若輸出為:cout<<*ptr<<*(ptr++)<
C C 中的輸入輸出
1.scanf與getchar 一般情況下,比如在沒有格式控制符的情況下,scanf是不能清除緩衝區的內容也就是說當遇到enter,space,tab鍵結束的時候,這3個鍵會放到緩衝區中。同樣,getchar也不能吃掉緩衝區中的內容,但是一般在有些程式用getchar做讀入字元來暫停程式,不過如果之...
C C 輸出間隔控制
c 使用setw int n 來控制他後面的變數的輸出佔多少個位置。預設是右對齊。例子 include using namespace std include using std setw setw int n 用來控制輸出間隔。cout s element value 0 100 1 101 2 ...
cc 漢字的輸出
include using namespace std include include include system函式所需標頭檔案 define stoptimelong 500 sleep函式以毫秒為單位,sleep 500 表示停半秒 pragma warning disable 4996 中...