我在使用 codegen 时遇到了一些问题(通过 gui 界面)。
我已经基于以下两个文件成功构建了一个非常简单的基于 c 的 .exe 程序。
码兰德.m
function r = coderand() %#codegen
r = rand();
主程序
#include <stdio.h>
#include <stdlib.h>
#include "coderand.h"
int main()
{
printf("coderand=%g\n", coderand());
return 0;
}
如果我现在尝试将 main.c 更改为 main.cpp 中的相同代码,
主文件
#include <stdio.h>
#include <stdlib.h>
#include "coderand.h"
void main(int argc, char **argv)
{
printf("coderand=%g\n", coderand());
}
我收到以下编译错误。
main.obj : error LNK2019: unresolved external symbol "double __cdecl coderand(void)" (?coderand@@YANXZ) referenced in function _main 25 F:\CoderTest\coderand.exe : fatal error LNK1120: 1 unresolved externals
非常感谢任何帮助。
编辑: - 自己解决...
对于那些遇到同样问题的人...
编码器 -> 更多设置 -> 所有设置 -> 高级 -> 语言..将 C 更改为 C++