[問題] 很初級的指標問題
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Dev C++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
無
我想問一個很簡單的指標問題
---------------------
int *p;
p=300;
-----------------
char *p;
p="abcd";
-------------------
int *p;
scanf("%d",p);
-------------------
char *p
scanf("%s",p);
-------------------
int *p=300;
----------------
char *p="test";
----------------
上面六個宣告那些是有錯的,問題在哪??
那些是對的??
因為我一直覺得指標變數的等號右邊要放指標(我的意思是要等於記憶體位址)
如果加*才要放值..但是在網路上看了一些範例好像不是這樣.
比如 int *p=300(300是值?),一般在書上看
int i=300;
int *p=&i;
才是OK的..但我有看到 int *p=300,覺得很奇怪
還有如果宣告是指標 比如
int *p;
那應該是可以用scanf("%d",p);
讓scanf函數讀入值到p位址吧..
可是我在執行的時有出問題
這些問題讓我有點頭痛,不知道有沒有人可以解釋這些問題
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.241.60.160
→
11/06 21:08, , 1F
11/06 21:08, 1F
→
11/06 21:09, , 2F
11/06 21:09, 2F
→
11/06 21:10, , 3F
11/06 21:10, 3F
→
11/06 21:10, , 4F
11/06 21:10, 4F
推
11/06 21:18, , 5F
11/06 21:18, 5F
推
11/06 21:20, , 6F
11/06 21:20, 6F
※ 編輯: sunlights 來自: 111.241.60.160 (11/06 21:26)
→
11/06 21:40, , 7F
11/06 21:40, 7F
→
11/06 21:50, , 8F
11/06 21:50, 8F
推
11/06 22:13, , 9F
11/06 22:13, 9F
→
11/06 22:14, , 10F
11/06 22:14, 10F
推
11/06 22:18, , 11F
11/06 22:18, 11F
→
11/06 23:07, , 12F
11/06 23:07, 12F
→
11/07 00:21, , 13F
11/07 00:21, 13F
→
11/07 00:32, , 14F
11/07 00:32, 14F
→
11/07 00:33, , 15F
11/07 00:33, 15F
→
11/08 00:12, , 16F
11/08 00:12, 16F
討論串 (同標題文章)