[問題] 指標的指標問題
開發平台(Platform):
問題(Question):
請問以下程式碼的*p1=(char*)malloc(16);
是以下哪張圖才是正確的
圖一. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
p1----->p|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_| 共16個byte給指標p本身記憶體
圖二. _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
p1-----> p----->|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_| 共16個byte給指標p所指向的
記憶體位置
程式碼(Code):
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void test(char**p1)
{
*p1=(char*)malloc(16);
strcpy(*p1, "Hello");
}
void main()
{
char*p=NULL;
printf("%p\n", &p);
test(&p);
printf("%s\n", p);
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.45.95.182
→
08/27 20:44, , 1F
08/27 20:44, 1F
→
08/27 22:05, , 2F
08/27 22:05, 2F
→
08/27 22:10, , 3F
08/27 22:10, 3F
→
08/27 22:11, , 4F
08/27 22:11, 4F
→
08/27 22:12, , 5F
08/27 22:12, 5F
→
08/27 23:58, , 6F
08/27 23:58, 6F
推
08/28 00:09, , 7F
08/28 00:09, 7F
→
08/28 00:10, , 8F
08/28 00:10, 8F
→
08/28 00:15, , 9F
08/28 00:15, 9F
→
08/28 00:15, , 10F
08/28 00:15, 10F
→
08/28 00:20, , 11F
08/28 00:20, 11F
→
08/28 00:21, , 12F
08/28 00:21, 12F
→
08/28 00:21, , 13F
08/28 00:21, 13F
→
08/28 00:28, , 14F
08/28 00:28, 14F
→
08/28 00:36, , 15F
08/28 00:36, 15F
→
08/28 00:37, , 16F
08/28 00:37, 16F
推
08/28 00:45, , 17F
08/28 00:45, 17F
→
08/28 07:54, , 18F
08/28 07:54, 18F
→
08/28 07:54, , 19F
08/28 07:54, 19F
討論串 (同標題文章)