私は c が常に値を渡すことを知っていますが、ポインターがある場合:
int i = 4;
int * p;
p = &i;
それから私は関数を持っています、p
それにポインタを渡し、変数の値を変更する方法はi
?
void changeValue(int *p)
{
}
ポインターを渡し、が指す変数を変更する方法はp
?
私は c が常に値を渡すことを知っていますが、ポインターがある場合:
int i = 4;
int * p;
p = &i;
それから私は関数を持っています、p
それにポインタを渡し、変数の値を変更する方法はi
?
void changeValue(int *p)
{
}
ポインターを渡し、が指す変数を変更する方法はp
?
void changeValue( int* ) ;
int main( void )
{
int i = 4; // Suppose i is stored at address 1000h
int * p;
p = &i; // Now p stores the address of i that is 1000h
changeValue(p); // Can also be written as changeValue(&i);
// Here you are passing the address of i to changeValue function
return 0 ;
}
void changeValue( int* p ) // Accept a parameter of type int*
{
*p = 100 ; // store the value 100 at address 1000h
return ;
}