我有一个指针问题,我不明白,希望你能帮助我。
int main()
{
int tab[] = {1,2,3};
int *ptr;
ptr=tab; // this is where my doubt lies
cout << &ptr << "," << ptr << "," << *ptr << "," << &tab << "," << tab << "," << *tab << endl;
return(0);
}
将指针指向您不应该做的事情,例如 ptr=&something ?? 如果有人可以向我解释,我将不胜感激。 谢谢
最佳答案
只要有可能,C 数组就会退化为指针。用线
ptr=tab;
你可能会遇到类似的行为
ptr=&tab;
但类型不同:在第一种情况下,您需要一个 int 指针,在后一种情况下,您需要一个指向具有特定类型的 int 数组的指针。
关于c++ - 指针疯狂,我只是想不通,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22742785/