Betrachten der Code unter:Wird der Zeiger nicht gleich dem der Ganzzahl erhöht?
void increment(int* a)
{
printf("%d\n",a);
*a=*a+1;
}
int main()
{
int a=10;
int* p=&a;
increment(&a);
printf("%d",a);
return 0;
}
Dies ist ein 11 um erhöht, aber diese:
void increment(int* a)
{
printf("%d\n",a);
*a++;
}
int main()
{
int a=10;
int* p=&a;
increment(&a);
printf("%d",a);
return 0;
}
Der obige Code erzeugt Wert als 10.
der arithmetische Zeiger ist nicht wie Ganzzahlarithmetik oder fehle ich hier etwas ??
@Bathsheba yeah ... '*** a = * a + 1 ; **
'WT *? –