どれだけトピックを読んでも評価戦略が理解できません。3 つの評価順序について、例を挙げて説明してもらえますか? 以下にコードを書いています。以下のコードを使用して、必要に応じて呼び出し (遅延評価)、名前で呼び出し (通常の順序評価)、参照によって呼び出しを説明できますか。あなたの例でそれらを説明することもできます。私はそれらを理解したいだけですが、理解できません。
int a[4] = {10,20,30,40};
int i = 0;
int *p;
void test(int x, int y, int z)
{
p = (int *)malloc(sizeof(int));
*p=x;
x++; y++; z++;
p = &z;
printf("%d %d %d\n",x,y,z);
x++; y++; z++;
p = &z;
printf("%d %d %d\n",x,y,z);
}
main()
{
test(i,a[0],a[i]);
printf("%d %d %d %d %d\n", a[0],a[1],a[2],a[3],*p);
}
前もって感謝します。
}