ここで何が間違っていますか?メモリをオリジナルcharPtr
または何か他のものに割り当てていますか? charPtr
withinの値を読めるのにmain では読めfunc2
ないのはなぜですか ( charPtr
is NULL
in main )?
#include <stdlib.h>
#include <stdio.h>
void func2(char *charPtr)
{
charPtr = (char *)malloc(sizeof(char));
*charPtr = 'c';
printf("func2: %c\n", *charPtr);
}
void func1(char** charDoublePointer)
{
//*charDoublePointer = (char *)malloc(sizeof(char));
func2(*charDoublePointer);
}
int main(int argsc, char* argv[])
{
char * charPtr = NULL;
func1(&charPtr);
printf("%c\n", *charPtr);
}