struct a {
int *p;
int c;
} a1,a2;
void fun(struct a);
int main()
{
a1.p=malloc(4);
*(a1.p)=10;
a1.c=20;
fun(a1);
printf("%d\n",*(a1.p));
return 0;
}
void fun(struct a temp)
{
a2=temp;
*(a2.p)=30;
printf("%d\n",*(a2.p));
}
私はこのようなプログラムを持っていますが、私の質問は.... *(a2.p)=30; を割り当てるときです。それは *(a1.p) の値に影響を与えます どのように回避しますか?つまり、*(a2.p) の値を変更しましたが、*(a1.p) の値に影響を与えたくありません。 ? 私に提案してください
前もって感謝します