您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)C語(yǔ)言中"&"的用法,文章內(nèi)容豐富且以專(zhuān)業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
在C語(yǔ)言中取地址運(yùn)算符是”&“
示例:
#include <stdio.h> int main(void) { int a = 0; int *p = &a; printf("The value is: %d/n", *p); return 0; }
&作為一元運(yùn)算符,結(jié)果是右操作對(duì)象的地址。
例如&x返回x的地址。
地址本身是一個(gè)抽象的概念,用于表示對(duì)象在存儲(chǔ)器中的邏輯位置。至于對(duì)象,LZ現(xiàn)在只需知道包含常量、變量等數(shù)據(jù)就可以了。
scanf("%d,%d",&x,&y);
這里的&x表示x的地址,&y表示y的地址。scanf接收地址,然后把鍵盤(pán)(更確切地說(shuō)是stdin輸入流緩沖區(qū))讀入的信息按格式字符串的形式處理后存放到接收到的地址中。對(duì)于純C來(lái)說(shuō),函數(shù)的參數(shù)是只能值參而不是變參,函數(shù)內(nèi)部對(duì)參數(shù)的改變只影響參數(shù)本身而不影響調(diào)用函數(shù)時(shí)的實(shí)際參數(shù)(換句話(huà)說(shuō)函數(shù)內(nèi)部的只是副本)。所以這里不能向scanf傳遞x本身,需要用地址&x指明需要存放的位置,才能把值存到x中。
等系統(tǒng)地學(xué)完函數(shù)和指針傳遞函數(shù)參數(shù)以后,LZ應(yīng)該會(huì)對(duì)這個(gè)有比較清楚的認(rèn)識(shí)。
至于讀鍵盤(pán)的活,是編譯環(huán)境(包括操作系統(tǒng)底層)干的,和C語(yǔ)言本身無(wú)關(guān)
上述就是小編為大家分享的C語(yǔ)言中"&"的用法了,如果剛好有類(lèi)似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。