我想知道为什么当我调用 readF() 并让它返回缓冲区指针并在 main() 中打印缓冲区时,它会打印实际数据而不是内存地址?我返回的地址而不是实际数据是否正确?在我的 main 中,我有一个指向返回内容的指针,这正是 readF() 中的缓冲区指针所指向的内容。
char *readF(){
char *buffer=NULL;
//allocate memory to contain the string plus null terminator
buffer=malloc((sizeof(char)*4)+1);
//fill memory with string Hello plus terminator
return buffer;
}
int main(int argc, char **argv){
char *buffer;
buffer=readF();
printf("%s", buffer);
return 0;
}