This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:Code Composer Studio
您好!
我想使用 CCS 中的异常处理功能。 默认情况 下,异常选项是禁用的,因此我通过“属性”>“高级选项”>“语言选项”启用了该选项。
由于 C 语言不支持异常处理,因此我启用了语言选项下的“将 C 文件视为 C++文件”选项。
但是、当我构建代码时、我会遇到以下错误:
>>编译失败
subdir_rules.mk:65:目标'F2837xD_PieVect.obj'的配方失败
"C:/ti/c2000/C2000Ware_1_00_06_00/device_support/f2837xd/common/source/F2837xD_PieVect.c、第295行:错误#145:类型"const PIE_VECT_TABLE *"的值不能用于初始化类型"UINT32 *"的实体
"C:/ti/c2000/C2000Ware_1_00_06_00/device_support/f2837xd/common/source/F2837xD_PieVect.c、第296行:错误#145:"volatile PI_VECT_table *"类型的值不能用于初始化"UINT32 *"类型的实体
在编译"C:/ti/c2000/C2000Ware_1_00_06_00/device_support/f2837xd/common/source/F2837xD_PieVect.c "时检测到2个错误。
Gmake:***[F2837xD_PieVect.obj]错误1.
gmake:目标"全部"不会由于错误而重新生成。
代码中的错误行为:
uint32*源=&PieVectTableInit;
uint32* dest =&PieVectTable;
从指针的角度来看、我知道的是 void *无法在 C++中定义。
但由于缺乏知识、我不知道谁要根据 C++格式更改行。
下面我将发布启用异常和 C 至 C++转换选择的屏幕截图。
此致、
Ashwin
我对 C2000Ware 还不够熟悉、但可以猜测、它没有记录在案或经过测试、可以构建为 C++。
将 C 文件编译为 C++、并启用异常、不会实现太多的效果。 假设此 C 代码由名为 parent 的 C++函数调用、而此 C 代码又调用另一个名为 child 的 C++函数、子函数抛出异常。 这种方式的建立意味着异常确实会从子级通过 C 代码传播到父级。 除了这种不寻常的情况外,没有理由这样做。
谢谢、此致、
乔治