error C2143: syntax error : missing ';' before '*' error C2501:'***' : missing storage-class o

本文探讨了在C++开发中遇到的循环引用问题及其导致的编译错误,具体分析了错误提示信息,并提供了解决方案。通过实例演示了如何识别和解决这种常见错误,帮助开发者避免在项目中遇到类似问题。

error C2143: syntax error : missing ';' before '*'

error C2501: 'CTest2Doc' : missing storage-class or type specifiers
error C2501: 'GetDocument' : missing storage-class or type specifiers

错误提示语句出现在 test2view.h 文件里 这里是 CTest2View类的定义

上网查资料后得知是循环引用的问题 比如A引用了B,B又引用了A

我这里是因为MainFrm.cpp包含了Test2View.h

# include <stdio.h> #include <limits.h> void main(){ int coins[3]={1,2,5}; int n=3; int m=17; int dp[999]={0}; int dp2[999]={0}; int i,j,min_x,res,i_x,r_x; for(i=1;i<m+1;i++){ dp[i]=INT_MIN; dp2[i]=INT_MIN; } for(i=1;i<m+1;i++){ min_x=9999; for (j=0;j<n;j++){ if(i>=coins[j]){ res=dp[i-coins[j]]+1; if(res>0){ min_x=res<min_x?res:min_x; dp2[i]=coins[j]; } } } dp[i]=min_x; } if(dp[m]==9999){printf("没有找零!");return;} printf("%d 最少张数为%d\n",m,dp[m]); } r_x=m; printf("零钱为: "); while(r_x>0){ printf("%d ",dp2[r_x]); r_x=r_x-dp2[r_x]; } --------------------Configuration: C - Win32 Debug-------------------- Compiling... C.CPP c:\program files (x86)\microsoft visual studio\myprojects\c\c.cpp(10) : warning C4101: 'r_x' : unreferenced local variable c:\program files (x86)\microsoft visual studio\myprojects\c\c.cpp(10) : warning C4101: 'i_x' : unreferenced local variable c:\program files (x86)\microsoft visual studio\myprojects\c\c.cpp(32) : error C2501: 'r_x' : missing storage-class or type specifiers c:\program files (x86)\microsoft visual studio\myprojects\c\c.cpp(32) : error C2065: 'm' : undeclared identifier c:\program files (x86)\microsoft visual studio\myprojects\c\c.cpp(33) : error C2501: 'printf' : missing storage-class or type specifiers c:\program files (x86)\microsoft visual studio\myprojects\c\c.cpp(33) : error C2373: 'printf' : redefinition; different type modifiers c:\program files (x86)\microsoft visual studio\vc98\include\stdio.h(329) : see declaration of 'printf' c:\program files (x86)\microsoft visual studio\myprojects\c\c.cpp(33) : error C2440: 'initializing' : cannot convert from 'char [9]' to 'int' This conversion requires a reinterpret_cast, a C-style cast or function-style cast c:\program files (x86)\microsoft visual studio\myprojects\c\c.cpp(34) : error C2143: syntax error : missing ';' before 'while' c:\program files (x86)\microsoft visual studio\myprojects\c\c.cpp(34) : error C2143: syntax error : missing ';' before '{' c:\program files (x86)\microsoft visual studio\myprojects\c\c.cpp(34) : error C2447: missing function header (old-style formal list?) 执行 cl.exe 时出错. C.exe - 1 error(s), 0 warning(s)
最新发布
11-04
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值