1樓:周大個子
tp = a;a = b;b = tp是交換了ab的指向,不影響主函式,t = *a;*a = *b;*b = t是改變了位址上的值,也就是把i和j的值互換。
所以函式中*a*b的輸出對應是j=3,i=7,主函式輸出ij這個沒什麼好說的,*p和*q還是ij的值。
2樓:day桃子
1)加*交換的是位址,會改變主函式中i和j的值,swap交換的是i和j的位址
2)不加*,不會改變i,j的值,i和j把自己的數值傳遞給swap函式中形參a,b,其交換的是a,b的值,對i和j無影響。
4) 總結:相當於你在main函式裡申請乙個變數int i,它在swap函式裡是沒有這個變數i的,它們只在自己的函式裡有效。也就是說,交換的值只在swap函式裡有效,如果不用指標*的話交換,這時你也可以把swap函式返回值void改為int(即把i和j交換後的值返回到主函式)
5)對與你上面的注釋:注釋是對的,那兩種交換都會改變swap函式裡的a,b值,但申請的中間變數指標交換後不會改變i和j的值。中間變數一般不會使用指標,因為沒有賦初值的指標是野指標,它會亂指位址導致結果出錯,引數a,b指標接收了main函式中的值
3樓:黨雅徐芃
就像while(!x)
等嘆號前面什麼也沒有,只有後面有乙個變數或函式的東西表示的是什麼意思啊?
while迴圈,先判斷while後面的「()」裡面的表示式,如果真,則執行後面的迴圈體語句,否則結束迴圈。這裡的x是乙個自定義的變數,!x的意思是根據x的值取反,如果原來x是非0值,則表示式的值為假,就不執行迴圈,如果x是0,!
x就是1,執行裡面的語句。
4樓:同樹菅鴻風
刪除d盤裡面的card.dat這個檔案
5樓:聊遠定洋
對於條件表示式b?x
:y,先計算條件b,然後進行判斷。如果b的值為true,計算x的值,運算結果為x的值;否則,計算y的值,運算結果為y的值。
乙個條件表示式絕不會既計算x,又計算y。條件運算子是右結合的,也就是說,從右向左分組計算。例如,a?
b:c?d
:e將按a?b
:(c?d
:e)執行。
《表示式1>
?《表示式2>
:《表示式3>;
"?"運算子的含義是:先求表示式1的值,如果為真,則執行表示式2,並返回表示式2的結果;如果表示式1的值為假,則執行表示式3,並返回表示式3的結果。
可以理解為條件
?結果1
:結果2 裡面的?號是格式要求。也可以理解為是不是條件成立,條件成立為結果1否則為結果2。
注意:在c語言中,結果1
和結果2的型別必須一致。a?
b:c簡單理解方式為:
if(a) else
c語言中 for語句後面的括號裡有兩個分號是什麼意思啊?
6樓:lee羅亞輝
for語句後加分號就是表示執行for中的語句,不執行其他,也就是不帶迴圈體語句。
for後面跟的是迴圈體。如果不需要有迴圈體,也就是for括號裡面的三句就可以完成所有功能那麼就加個分號,表示迴圈體為空。比如 :
求字串s的長度for(len=0;s[len]; len++);這個, 單獨for裡面的三句就完成了所有功能, 不需要迴圈體, 加分號。
擴充套件資料
for迴圈是程式語言中一種迴圈語句,而迴圈語句由迴圈體及迴圈的判定條件兩部分組成,其表示式為:for(單次表示式;條件表示式;末尾迴圈體)。
for( ; ; )裡面是3個語句,兩個分號。第乙個語句是開始前執行,第二個語句是判斷真假,如果真,就執行後面(大括號內)的**。第三個語句是每次執行完畢後執行的東西,通常第三個語句使用"i++"表示i=i+1的意思,用來遞增自變數i。
7樓:匿名使用者
表示這個迴圈沒有初始化,沒有條件判斷,沒有標誌變數的變化
它是乙個死迴圈
這樣的迴圈其迴圈體內必須有跳出迴圈的語句,否則就沒法正常退出了
8樓:匿名使用者
你好!for(int i=0;i<100;i++) 分號主要是作分隔的效果。 意思就是說,第乙個分號前面的是設定迴圈的起始大小;第乙個分號與第二個分號間的是設定迴圈的最大次數;第二個分號後面的表示是遞增迴圈還是遞減迴圈。
c語言中public:是什麼意思啊?
9樓:人設不能崩無限
public:定義乙個全域性變數。
全域性變數是程式設計術語中的一種,源自於變數之分。
變數分為區域性與全域性,區域性變數又可稱之為內部變數。由某物件或某個函式所建立的變數通常都是區域性變數,只能被內部引用,而無法被其它物件或函式引用。
全域性變數既可以是某物件函式建立,也可以是在本程式任何地方建立。全域性變數是可以被本程式所有物件或函式引用。
10樓:計0劃0環0境
在public: 下的成員,是類的公有成員,別的類或者主函式可以申明個物件直接訪問,而private: 下的是私有成員,只有類的內部能訪問,類的外部無法訪問的.
class a
;main()
11樓:匿名使用者
public:定義乙個全域性變數。
就是說,他後面的那些變數,你可以用在下面所有的函式中。
12樓:雙子
在visual basic中宣告全域性變數的關鍵字
c語言中? : 語句是什麼意思
13樓:滄海雄風
我猜你說的是三目運算
例如c = a>b?a:b;
這個就是等同於
if (a>b)
else
14樓:看風景的人
對於條抄
件表示式b ? x : y,先計算
襲條件b,然後進行判bai斷。如果b的值為true,計算dux的值,運算zhi結果為x的值;否dao則,計算y的值,運算結果為y的值。乙個條件表示式絕不會既計算x,又計算y。
條件運算子是右結合的,也就是說,從右向左分組計算。例如,a ? b :
c ? d : e將按a ?
b : (c ? d :
e)執行。
《表示式1> ? 《表示式2> : 《表示式3>; "?
"運算子的含義是:先求表示式1的值,如果為真,則執行表示式2,並返回表示式2的結果;如果表示式1的值為假,則執行表示式3,並返回表示式3的結果。
可以理解為條件 ? 結果1 : 結果2 裡面的?號是格式要求。也可以理解為是不是條件成立,條件成立為結果1否則為結果2。
注意:在c語言中,結果1 和 結果2的型別必須一致。
a ? b : c簡單理解方式為:
if(a) else
c語言中o是什麼意思,C語言中 c是什麼意思
o意思是以八進位制整bai型式輸出整du數。c語言zhi中對於不同型別的資料用dao不同的格式字元內。x格式符,以十六進製制數容形式輸出整數。u格式符,用來輸出unsigned型資料,即無符號數,以十進位制形式輸出。c格式符,用來輸出乙個字元。s格式符,用來輸出乙個字串。擴充套件資料 scanfse...
在c語言中 是什麼意思,C語言中 c是什麼意思
1 c語言中 是兩個運算子擺放在一起,是賦值運算子,邏輯非運算子 2 邏輯操作符一般將其運算元視為條件表示式,返回結果為bool型別 3 首先對其運算元求值,若結果為0,則條件為假 false 否則為真 true 4 優先順序上 先於 所有比如有下面的式子,int i i 5 5 這個理解為 根據運...
c語言中是什麼意思,C語言中 是什麼意思?
你好,a b表示a a b a b表示a a b 是c語言的運算子部分的知識 其中 是結構體指標的知識 條件運算子 a?b c表示a為真則執行b,否則執行c 運算子的知識,叫自反賦值運算子 a b相當於a a b a b相當於a b 是指向成員運算子 不懂可以問我 c語言中輸出語句中用到 c,表示輸...