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()
。