Har*_*ary 0 c arrays malloc printf pointers
#include<stdio.h>
#include<stdlib.h>
void main()
{
char *arr;
arr=(char *)malloc(sizeof (char)*4);
scanf("%s",arr);
printf("%s",arr);
}
Run Code Online (Sandbox Code Playgroud)
在上面的程序中,我真的需要分配arr吗?即使不使用malloc也能给我结果.我的第二个疑问是'我期待第9行出错,因为我认为它必须是printf("%s",*arr); 或者其他的东西.