我學習C語言編程和我有指針一個簡單的問題...學習C - 指針和內存尋址
我用下面的代碼玩弄指針:
#include <stdio.h>
int main (int argc, const char * argv[]) {
int * c;
printf("%x\n",c);
return 0;
}
當我打印C的值,我得到一個0。但是,當我打印& C(即輸出(「& X \ n」,&三)我得到內存中的地址...
我不應該打印時要在內存中獲取地址e指針(即的printf( 「%X \ n」 個,C)?
--- 編輯 ---
#include <stdio.h>
#include <stdlib.h>
int main (int argc, const char * argv[]) {
char * a = malloc(11);
printf("String please\n");
scanf("%s",a);
printf("%s",a);
}
的問題是,爲什麼的printf( 「%S」,一個)返回字符串,而不是存儲在一個地址?
不應該使用* a來跟隨指針,然後打印字符串嗎?
您還沒有初始化的指針打印單個字符,所以它的價值可以是任何東西。 – 2010-07-18 16:59:53