1、&是取地址,scanf讀取變量的時(shí)候,參數(shù)需要的是變量的實(shí)際內(nèi)存地址,了解C語(yǔ)言指針的概念后就會(huì)明白,地址就是指針,指向變量的數(shù)據(jù)內(nèi)容。不過(guò)一般%s是不會(huì)用&取地址的,因?yàn)樽址愋捅旧砭褪侵羔?,不需要再進(jìn)一步取地址。
公司主營(yíng)業(yè)務(wù):做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。成都創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。成都創(chuàng)新互聯(lián)推出桐廬免費(fèi)做網(wǎng)站回饋大家。
2、目前2011年12月8日,國(guó)際標(biāo)準(zhǔn)化組織(ISO)和國(guó)際電工委員會(huì)(IEC)發(fā)布的C11標(biāo)準(zhǔn)是C語(yǔ)言的第三個(gè)guan方標(biāo)準(zhǔn),也是C語(yǔ)言的最新標(biāo)準(zhǔn),該標(biāo)準(zhǔn)更好的支持了漢字函數(shù)名和漢字標(biāo)識(shí)符,一定程度上實(shí)現(xiàn)了漢字編程。
3、地址符& 就是獲得一個(gè)變量/常量/函數(shù)的內(nèi)存地址,沒(méi)有別的含義。scanf中,使用地址符,是因?yàn)閟canf需要的是指針變量(因此指針變量不需要地址符),而普通變量需要通過(guò)地址符轉(zhuǎn)譯為指針使用。
4、在C語(yǔ)言中,&有三種作用,分別如下:取地址。單目運(yùn)算符。用來(lái)取一個(gè)變量的地址。比如 int i,p;p = //這里的&作用是取變量i的地址。位操作中的與操作運(yùn)算符。也就是常說(shuō)的and操作,雙目運(yùn)算符。
5、&是一個(gè)重載運(yùn)算符(意思是一個(gè)運(yùn)算符在不同情況下有不同的意義)。當(dāng)&僅出現(xiàn)在一個(gè)變量前的時(shí)候,意味著取該變量的地址,如有int a,則&a可以取得a在內(nèi)存中的地址,這個(gè)地址可以用一個(gè)指針型變量來(lái)存儲(chǔ)。
6、scanf(%d,%d,&x,&y);這里的&x表示x的地址,&y表示y的地址。scanf接收地址,然后把鍵盤(更確切地說(shuō)是stdin輸入流緩沖區(qū))讀入的信息按格式字符串的形式處理后存放到接收到的地址中。
int **p。假如先定義了一個(gè)整型指針變量p。是學(xué)習(xí)c語(yǔ)言不錯(cuò)的教材.g int a。int (*p)()。而這個(gè)空間在內(nèi)存中的位置就是它的地址,它會(huì)先根據(jù)&a知道a的地址。int (*p)[n]。p是一個(gè)指針變量。
目前2011年12月8日,國(guó)際標(biāo)準(zhǔn)化組織(ISO)和國(guó)際電工委員會(huì)(IEC)發(fā)布的C11標(biāo)準(zhǔn)是C語(yǔ)言的第三個(gè)guan方標(biāo)準(zhǔn),也是C語(yǔ)言的最新標(biāo)準(zhǔn),該標(biāo)準(zhǔn)更好的支持了漢字函數(shù)名和漢字標(biāo)識(shí)符,一定程度上實(shí)現(xiàn)了漢字編程。
c語(yǔ)言中, 函數(shù)名也稱為函數(shù)的指針,所以c語(yǔ)言中函數(shù)名就是一個(gè)指針。1,例如: ShowMenu是一個(gè)函數(shù)名,可以看到他的值是一個(gè)地址。&ShowMenu是對(duì)函數(shù)取地址,指向和ShowMenu同樣的地址。
1、函數(shù)原型:int scanf(const char * restrict format,...);函數(shù) scanf() 是從標(biāo)準(zhǔn)輸入流stdin (標(biāo)準(zhǔn)輸入設(shè)備,一般指向鍵盤)中讀內(nèi)容的通用子程序,可以說(shuō)明的格式讀入多個(gè)字符,并保存在對(duì)應(yīng)地址的變量中。
2、地址為0X2000,則數(shù)組名c就代表這個(gè)首地址。因?yàn)閏已經(jīng)表示地址,所以在c前面不能再加取地址符&。字符串?dāng)?shù)據(jù)類型是建模在形式字符串的想法上的數(shù)據(jù)類型。字符串是幾乎在所有編程語(yǔ)言中可以實(shí)現(xiàn)的非常重要和有用的數(shù)據(jù)類型。
3、其實(shí)問(wèn)題就出在這兒,因?yàn)閏語(yǔ)言是傳值的,那么scanf函數(shù)內(nèi)部是不能取得實(shí)參i的地址的,取得的是形參的地址而已,那么賦值的時(shí)候是給形參賦值了,i并沒(méi)有改變。
4、a=567;則,a為變量名,567是變量的值,&a是變量a的地址。但在賦值號(hào)左邊是變量名,不能寫地址,而scanf函數(shù)在本質(zhì)上也是給變量賦值,但要求寫變量的地址,如&a。這兩者在形式上是不同的。
5、你用scanf輸入的時(shí)候,是要在函數(shù)內(nèi)對(duì)變量值進(jìn)行修改的。而printf輸出的時(shí)候,只用到變量的值,不必在函數(shù)內(nèi)改變變量的值。
6、另外,c語(yǔ)言開發(fā)時(shí)就這么規(guī)定的,沒(méi)有太多的為什么,當(dāng)初人家發(fā)明c語(yǔ)言時(shí)說(shuō)scanf需要加地址符,那咱們用的時(shí)候就得加,當(dāng)初人家發(fā)明c語(yǔ)言時(shí)說(shuō)scanf不需要加地址符,那咱們用的時(shí)候自然就不用加了。