尽管声明了变量,但范围错误

时间:2014-03-29 10:52:34

标签: c++ scope

即使我声明了变量,我也会收到变量的范围错误。以下是代码

// file.cpp

#include <iostream>

struct node {
    int data;
    node *next;
}

void find(node *, int );

int main()
{
   node *head = new node();
   find(head,3);
}

void find(node *curPtr, int node) 
{
  node *refPtr,*mainPtr;

}

g ++ -g file.cpp

错误:未在此范围内声明'refPtr'    错误:'mainPtr'未在此范围内声明

1 个答案:

答案 0 :(得分:2)

void find(node *curPtr, int node)  // you have one variable calls node 
//                          ^^^^   // which is same name as struct type.
{
  node *refPtr,*mainPtr;

}

将其更改为

void find(node *curPtr, int value) 

此外,您在定义;

后错过了struct node
相关问题