题目大概如下:
void findQueen(int* count){
if(){
(*count)++;
return;
}
findQueen(count);
}
int totalNQueens(int n) {
int count=0;
findQueen(&count);
return count;
}
1. findQueen()的参数传递:
第一次调用,此时count为一个值,用&将地址传给函数,函数用指针保存地址,在函数中count即为指针(地址),*count为值;
在函数中的调用,此时count为指针(地址),再调用函数直接将指针count传给函数,不能再用&取地址。
2. C语言中是不存在引用,也就是说C语言中&表示的不是引用,而是取地址符。
这段代码会报错:
void swap(int &x,int &y){
int temp=x;
x=y;
y=temp;
}
exchg(a,b);