這裡是只用一個指標交換兩個變數麼?

2023-03-25 20:30:05 字數 1920 閱讀 3029

1樓:網友

這個是c語言基礎誒,最後一句問的我都不想了,解釋起來超級累,算了;我忍辱一下:

主函式的呼叫fun將a的引用下傳到函式的x指標,此時x指向a所在的記憶體,即真正的3;b只是將自己的數形式傳參下去,記憶體另外開闢一個4個位元組來儲存b的值,即5;好,現在來看函式fun

此時y的值就是8;區域性變數t不說了,t先賦值為x所指的位置的數,這個數就是a本身,是3,然後x所指,就是a所在的那塊記憶體,程式設計了y的值,就是8;此時,a就是8了,再將t返回,即返回的數是3;

主函式的b接受這個3,值變成8;輸出結果。

另外,等樓主以後多練習了之後,推薦你去堆疊的概念,會很有用處,現在不要看,看了會更暈。

2樓:匿名使用者

fun(&a, b)把a的地址和b的值傳給funint t;定義了t

t=*x把a的地址的值賦給t

*x=y把b的值放到a的地址上。

return(t)返回t(a的值);

b = fun(&a, b) ;把fun返回的值賦給b

3樓:網友

把x指向的值賦值給t,把y的值賦值到x指向的空間裡,然後返回t。

c語言中如何交換兩個指標變數的的值

4樓:小小歐平兒

1、首先,就是最基本的知識,寫標頭檔案、函式宣告、定義變數。

2、下面還需要定義指標,需要定義兩個指標p1和p2,然後把a的地址賦值給p1,把b的地址賦值給p2。

3、然後就是呼叫函式,該函式沒有返回值,就直接呼叫,但是引數進入的是a和b的地址,而不是a和b。

4、函式點用完之後,就是輸出a和b的值看一看是否互換了。

5、首先,a和b的地址傳給x和y,通過指標直接對a和b的值進行操作。

6、最後,就是調換*x和*y的值,這樣就是實現了a和b的值。

5樓:匿名使用者

交換兩個指標變數的的值有兩種不同的形式:

在指標定義所在函式交換兩個指標變數的值。

這種交換,與交換兩個整型變數的值方法相同,分三步:

先將pa儲存到臨時變數pt中,再將pb儲存到pa中,最後將pt儲存到pb中。

通過自定義函式進行交換兩個指標變數的值。

這種交換,必須要傳遞兩個指標變數的地址到自定義函式中(即函式的形參是二維指標),然後在函式中對收到的二維指標變數中的內容進行交換,即可實現實參的交換。

6樓:匿名使用者

定義一箇中間變數t(也是結構體型別的):

t=p1;p1=p2;

p2=t;就行了。

7樓:匿名使用者

定義一個指標變數temp,*temp=*p1;*p1=*p2;*p2=*temp;

用指標交換變數怎麼理解?

8樓:匿名使用者

這麼想吧,指標變數裡存放的是地址,*號代表的是取這個指標變數內的地址裡的值。

若有 int a; int *p; 那麼p=&a是把a的地址存放在int 型的指標變數p裡,那麼*p代表的就是p的內容,即a的地址上存放的值,也就是a的具體值。

*p1=*p2:把*p2指向地址的內容賦給*p1指向地址的內容*p2=t:把t的值回送給p1指向地址的內容這裡t起到了臨時變數的作用,實現了對p1和p2兩個指標指向地址的內容的交換。

9樓:匿名使用者

*p是解引用、就是引用p指向的地址所儲存的值、p是個地址、而*p就是一個值、賦值就不用說了把。

10樓:良辰浩淼

*p1是指向p1地址的變數。

*t是指向t變數的指標。

t = p1;//將指向p1的變數放在t中*p1 = p2;//將指向p2的變數付給將指向p1的地址*p2 = t;//將t賦給將指向p1的地址。

編寫交換兩個變數的函式,在主程式中呼叫,用變數地址作為實參,指標變數作為形參,實現兩個變數的交換

假設你使用的c語言 include void swap int a,int b a,b指標做形參int main void 如果你用的是c 的話,還可以使用引用型別void swap2 int a,int b 交換兩個變數的值的時候可以使用異或符號 省去中間變數temp void swap3 int...

男人有兩個老婆兩個情人,一個男人有兩個老婆兩個情人

他就是觸犯了法律了!你為什麼還說 要在不觸犯法律的情況下給他點教訓?教訓,夠嗎?我很疑惑,是這個男人特別特別出色,還是你特別特別痴情。你既然發現是這樣的真相,為什麼不離開這渾水。你一清清白白沒結過婚的女孩,為什麼要被騙的團團轉,讓這些很滑稽的事情成為你生活的煩惱?是不是在愛情裡頭的時候人的腦子都是在...

這兩個無花果是品種嗎,這兩個無花果是一個品種嗎?

看 是的 管理養護 整形修剪 無花果的整形修剪較簡單,修剪整形技術要求不高,一般採用多主枝自然開心形整枝方式,但要全株保留3 5條主枝,不留側枝,主枝組直接著生在主枝上。幼樹期間重點抓好培養主枝,並注意抬高主枝角度,促進多發枝條,達到迅速擴大樹冠的目的。進入初果期後,抓好多培養枝組,以便促進形成一定...