最近C言語を勉強しはじめたのですが(プログラミングの)、ポインタの所で理解できない部分があって困っています。
おそらくどの参考書にも載っているポインタを使って変数を交換する話なのですが(高橋麻奈著:「初めてのC」という本を使っています)
swap関数を
void swap(int *pX,int *pY){
略
}
で定義し、main関数の中で
swap(&num1,&num2)
として実引数のアドレスを渡しているのですが、疑問なのはint *pXの*pXはポインタではありますがあくまでint型の整数であり、int型整数にint型アドレスを渡す、やってよいのでしょうか。
例えばint *pX=&num1というのは左辺がint型整数で、右辺はアドレスであり、まずいと思うのですが……
すいません。書いててよくわからなくなってしまいました。どなたかよろしくおねがいします。