记第一次用VS2017遇到的错误

  • Post author:
  • Post category:其他




1.意外的类型 int(int不允许使用类型名)

犯了一个有一点傻的错误。在编辑主函数的打成了

int main{
   int n;//这里的int和n都报错了
}

提示

error C3861: “n”: 找不到标识符

还有

int 不允许使用类型名


解决办法

:应该把上面的代码改成(加一个括号):

int main (){
	int n;
}

注:这个地方是百度到的…没想到还有人会和我犯一样的错误,刚看到的时候我还觉得怎么可能是这个原因,也太傻逼了吧…回去一看,真的没加(??)。真是他妈峰回路转柳暗花明傻逼皮皮猪呜呜呜



2.数组表达式必须含有常量值

int main()
{
   int n(0) ,i; 
   cin >> n;
  int a[n];//这里提示了错误
  //中间省略其他代码
  return 0;
}


解决办法1

:定义数组时,里面不应该是个变量,不能用这种方式输入,应该定义成常量(可能会浪费一点空间)。

int main()
{
   int n(0) ,i; 
   cin >> n;
   treenode *bst=new treenode;
  int a[10];
//中间省略其他代码
  return 0;
}


解决办法2

:改成

堆内存分配

(可以动态分配数组,而且里面可以是变量)

形式:

指针=new 数据类型[元素个数]


注意:!最后要记得delete []n;

int main()
{
   int n(0) ,i;
   int *a;
   cin >> n;
   a=new int[n];
//中间省略其他代码
  delete []a
  return 0;
}



3.必须定义入口点

这个错误真的很蠢

int mian() {
	int m;
	for (m = 11; m < 1000; m++) {
		if (symm(m) && symm(m*m) && symm(m*m*m)) {
			cout << "m=" << m << "m*m=" << m * m << "m*m*m" << m * m*m << endl;
		}
	}
	return 0;
}

提示:

LINK : fatal error LNK1561: 必须定义入口点



解决办法

:把mian()改成main()



版权声明:本文为y741809594原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。