新聞中心
這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
C語(yǔ)言沒(méi)有引用,只有指針
這個(gè)問(wèn)題是昨晚上有同學(xué)在知識(shí)星球提問(wèn),但是因?yàn)榍皟商煲恢痹诔霾睿容^累,沒(méi)認(rèn)真回答,今天打球回來(lái),就把這個(gè)事情解決了。

我想說(shuō)的已經(jīng)在題目說(shuō)明的很清楚了,C語(yǔ)言是沒(méi)有引用的,引用是在C++里面才存在的神級(jí)操作。
所以,什么是引用呢?
說(shuō)白了引用&就是給已經(jīng)存在的某個(gè)變量新建了一個(gè)名字,如果程序?qū)σ脛e名做了某些操作,其實(shí)就是對(duì)原目標(biāo)的改動(dòng)。
C ++ 引用實(shí)例
- #include
- #include
- void exchange(int &x, int &y)
- {
- int t;
- t = x;
- x = y;
- y = t;
- }
- int main()
- {
- int a, b;
- scanf("%d %d", &a, &b);
- exchange(a, b);
- printf("%d %d\n",a,b);
- getchar();
- return 0;
- }
程序輸出
- 12 34
- 34 12
- --------------------------------
- Process exited after 3.121 seconds with return value 0
- 請(qǐng)按任意鍵繼續(xù). . .
C語(yǔ)言有什么呢?
C語(yǔ)言是萬(wàn)變不離其宗的指針,引用在C++里面出現(xiàn)后,讓編程變得非常友好,你看上面的操作,看起來(lái)就非常明了。
不過(guò)我們也可以使用指針來(lái)完成上面的操作
實(shí)例代碼
- 12 34
- 34 12
- --------------------------------
- Process exited after 3.121 seconds with return value 0
- 請(qǐng)按任意鍵繼續(xù). . .
程序輸出
- 12 56
- 56 12
- --------------------------------
- Process exited after 2.477 seconds with return value 0
- 請(qǐng)按任意鍵繼續(xù). . .
留一個(gè)討論題目
討論下下面的程序輸出什么?
- #include
- #include
- void exchange(int *x, int *y)
- {
- int *t = x;
- *x = *y;
- *y = *t;
- }
- int main()
- {
- int a, b;
- scanf("%d %d", &a, &b);
- exchange(&a, &b);
- printf("%d %d\n",a,b);
- getchar();
- return 0;
- }
標(biāo)題名稱(chēng):C語(yǔ)言沒(méi)有引用,只有指針
轉(zhuǎn)載來(lái)源:http://www.dlmjj.cn/article/djicjhs.html


咨詢(xún)
建站咨詢(xún)
