1樓:紫夜星塵
定義的來時候就已經說了
源pa是指標變數了啊,同時賦予了整型變數a的地址的值。在scanf語句中,pa所代表的就是等同與&a的一個地址數值。計算機靠這個地址的值找到要儲存的位置。
b.很明顯就錯了啊,scanf("%d",a); 這個位置中,a處要填的是地址的值,a只是一個變數名。
c.&pa根本就不代表什麼,在定義裡,要寫*pa才代表pa這個變數是指標變數,而在語句中,只要寫pa就代表指標了,寫成*pa反而代表的是那個地址所儲存的內容。
d.跟b等同效果。
2樓:介樹花弘詩
樓主,指標的概念是指向一段地址,再看sacnf("%d",&a),中a也是要取a的地址,如果你要加*那就是解析那個指標了。
3樓:公叔恭漫歌
pa是指標,*pa=&a把a的地址賦值給pa,所以pa就是地址,不用加取地址符號
謝謝採納
4樓:匿名使用者
答案當然是a
函式bai
名稱: scanf
函式原du型: int scanf(char * format,args,...);
函式功能: 從標準zhi輸入裝置dao按format指向的格式
版字元權串規定的格式,輸入資料給agrs所指向的單元.
函式返回: 讀入並賦給args的資料個數.遇檔案結束返回eof,出錯返回0.
函式說明: args 為指標.
5樓:
答案為a 因為scanf()中的第二個引數就是要輸入的那個數的地址,由於有*pa=&a,所以,pa就是a的記憶體地址了,所以選a 它等於scanf("%d",&a);
6樓:匿名使用者
scanf函式後面跟的必須是地址或者指標
設有語句 int a=3 ; 則執行了語句 a+ = a * a後,變數a 的值是( ) a、3 b、0 c、9 d、12
7樓:匿名使用者
賦值運算是從右到左的上面的語句運算順序是:a-=a*a;a+=a;計算第一個後a的值是-6,再計算第二個,a的值就是-12
8樓:日出日落三十天
d a=3+3*3=12
設有定義 int n1 0,n2,p n2,q以下賦值語句中與n2 n1 語句等價的是A p q B p q C p
n2 n1 是將n1的值賦值給n2,與變數地址無關,因此去除所有對指標操作不帶 的選項 b d c.p n1 是將n1的地址值賦值給p,即p指向n1,與n2無關。是取變數地址操作符 a.p q 正確,通過n1的地址q,提取資料n1的值,賦值給由p所指向的n2的地址 指標變數中存的是地址值,通過地址值...
設有如下變數定義charaa3abcdef
char p 3 我們可以可以看到p是指向一個有三個元素的字元陣列的指標。那麼當p 的時候,相當於跳過指向的陣列。再來看一下,char aa 3 我們可以發現aa是二維陣列,而p指向的是一維陣列。所以我們去分解aa讓他變成兩個一維陣列 和p在 操作前其實是指向前面那個一維陣列,當p 之後,p此時其實...
設有定義語句「int a 10,p a則表示式「a p」的值是
結果是20啊 p就等於a啊 我用程式給你測試了 void main 不確定,p中儲存的是a的地址,且 p沒有分配儲存空間,可能導致程式崩潰。在int a 10,p a 語句中,p的值是 答案是 c 變數 p 應該是個二級指標 int p c語句int a 10,p a 則 p 1的值是 11 p a...