SOで見つかった同様の質問かもしれません。しかし、私はそれを見つけませんでした、これがシナリオです
ケース1
void main()
{
char g[10];
char a[10];
scanf("%[^\n] %[^\n]",a,g);
swap(a,g);
printf("%s %s",a,g);
}
ケース 2
void main()
{
char *g=malloc(sizeof(char)*10);
char *a=malloc(sizeof(char)*10);
scanf("%[^\n] %[^\n]",a,g);
swap(a,g);
printf("%s %s",a,g);
}
どちらの場合も同じ出力が得られます。それで、私の質問は、またはその逆malloc()の代わりにいつ好むべきarrayか、そしてその理由は?? 共通の定義を見つけ、malloc()動的割り当てを提供します。それで、それはそれらの間の唯一の違いです?? dynamicでサイズを指定していますが、 とはどういう意味ですか? 誰か例を挙げて説明してくださいmalloc()。