1樓:隔壁小鍋
int *p;*p=100;則 printf("%d",p); 的輸出結果是100是不對的,p宣告為一個int型指標,但是沒有指向具體的記憶體空間。
int型別在記憶體中佔用了4個位元組,也就是32位。int型別是有符號的,因此,32位並不會全部用來儲存資料,使用最高位來儲存符號,最高位是0,提示資料是正數,最高位是1,表示資料是負數,使用其他的31位來儲存資料。
2樓:極風之劍
這是不對的,p宣告為一個int型指標,但是沒有指向具體的記憶體空間,賦值操作是非法的,執行時要報錯。
3樓:匿名使用者
首先,你定義了一個指向整型變數的指標p,將100賦值給p,則p指向的就是100這個整型量,所以輸出的p就是100,對的那,我就得
4樓:
錯的,指標p沒有指向變數地址,不可以使用*p
5樓:小汐琴
不對,指標p只有宣告,沒有初始化,不能使用
6樓:九曲青溪
不對,輸入的是地址,而不是值。輸出用 *p,則輸出是100
在實際執行中根本不能執行,你的*p沒有初始化,*p=100,是沒有任何意義的,100給 p指向的地址,p指向的地址不知道。
設有如下定義:int x=10,y=3,z;則語句printf("%d\n",z=(x%y,x/y));的輸出結果是多少?
7樓:匿名使用者
最後一個printf函式的值是x除y的商以整型輸出,裡面的引數是一個逗號表示式,逗號表示式的值為最後一個的值,所以輸出的是x除以y的值,x%y意思是10除以3的餘數為1,x/y意思是x除以y…,%為求餘運算子
8樓:匿名使用者
3嘛 z其實就等於x/y 即3
9樓:匿名使用者
x%y=1;x/y=3
z=(1,3)
輸出的是1!!!
設有如下定義,int x=10,y=3,z; 則語句printf("%d\n",z=(x%y,x/
10樓:匿名使用者
逗號運算子,取後值,因此z=(x%y,x/y)就是z=x/y
z=x/y =10/3 三個都是整形變數,因此是整除運算,z的值為3,printf輸出z的值,結果為3
11樓:聽不清啊
x/y是最後逗號表示式的值,賦給z,也是最後輸出的值。
12樓:big漂亮
%d\n 是說把逗號後的結果以十進位制顯示出來。並換行
z=(x%y,x/y) 是把x/y的值給z (因為是逗號運算子,所以整個值是逗 號後面的值。在這x對y取餘沒有作用。
結果是輸出z的十進位制數。 z是x除y的值。
53、設有如下定義: int x=10,y=3,z; 則語句 printf("%d\n",z=(x%y,x/y)); 的輸出結果是
13樓:匿名使用者
x%y,x/y,逗號運算子,依次執行各表示式,並將最後一個表示式的值賦給z
另外,x/y是整型運算,結果為整型。
x%y=1,x/y=3,將3賦給z,z的值是3選d
14樓:匿名使用者
選擇d逗號表示式的值由最末項決定即x/y,顯然值為3
5. 設有如下定義:int x=l,y=-1;,則語句:printf("%d\n",(x-- & y++);的輸出結果是 5
15樓:0女少女少
這裡關鍵就是 x++ 問題
x=1x++:整個表示式值還是x本身1,但下次再用到x時,x就是2了;
++x:整個表示式值就是2了,x=2;
16樓:匿名使用者
開始x=1 ,y=-1
(x-- & y++) 開始x--=1 真 x變成0
y++=-1 此時y=0 就是
設有如下定義 intptr則以下敘述中正確的是
墨汁諾 c。ptr函式返回一個int 型資料 這個才是正確的,理由是int fun 顯然是一個函式說明,fun換為 ptr 則ptr就是指向函式的指標了。int ptr m ptr是一個指向m長度的線性記憶體空間,即m大小的一維陣列 int ptr ptr是一個返回值為int 引數列表為空的函式指標...
有誰知道,設有如下定義 int a 2,b 3,c 4則值為0的表示式為
選a這裡考察的是表示式中的邏輯運算子 所以要理解 和 的含義。當其左右兩邊的表示式都為真時,整個表示式的值才為真,否則為假 0 當其左右兩邊的表示式都為假時,整個表示式的值才為假,否則為真.而在c語言判斷一個表示式是否為真的標準就是0是假,非0是真。所以a a 1 b 0 就是 2 1 3 0 2取...
在C語言中,如果有如下定義 int x 5,y y x 3,x 13 ,x 2則y
x 3,x 13 是一個逗號表示式,結果是最右邊那個表示式x 13的值18。y x 3,x 13 x 2 即y 18,x 2 又是一個逗號表示式,先將y賦值為18,再算x 2等於10。所以y 18。 這題主要就是明白兩個概念 1 逗號表示式將多個子式聯接起來,從左往右計算,整個逗號表示式的值為最後一...