請選出正確的程序段
請選出正確的程序段
A.int*p; scanf("%d",p); …
B.int *s,k; *s=100; …
C.int *s,k; char *p,c; s=&k; p=&c; *p='a'; …
D.int *s,k; char *p,e; s=&k; p=&c; s=p; *s=1; …
正確答案:C解析: 本題的選項A)和B)犯了同樣的錯誤,即指針變量在定義后并沒有指向具體的變量。也就是說,指針變量中沒有確定的地址值,它的值是不可預見的,所指的單元也是不可預見的,因此不能進行賦值操作。另外,在選項D)中,s是int型指針變量,p是char型指針變量,所指向的內(nèi)存單元所占用的字節(jié)數(shù)是不同的,因而不能將字符指針變量p的值賦給整型指針變量s。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。