解决C语言error: expected ‘;‘, ‘,‘ or ‘)‘ before ‘&‘ token

调试C语言代码的时候,遇到报错:error: expected ‘;’, ‘,’ or ‘)’ before ‘&’ token,报错的直接意思是在‘&’标识符之前缺少‘;’或‘,’或‘)’,如下图:

解决C语言error: expected ‘;‘, ‘,‘ or ‘)‘ before ‘&‘ token_第1张图片
找到对应行代码,发现并不是因为缺少分号或括号什么的导致的,而是错误地使用了引用传递,因为使用‘&’进行引用传递是C++中的语法习惯,事实上C语言中‘&’一般用作取地址符,不支持引用传递。

因此,针对该问题有两种解决方案

方法1:如果坚持要使用C语言,可以考虑把“&”使用“*”(指针)替换,函数调用时,用“&”传址。

方法2:不想修改代码,则可以改用C++编译运行代码,注意源代码后缀名需改为“.cpp”

你可能感兴趣的:(笔记,debug,c语言)