c_sample\u​sertypes/u​sertypes.h​(10) : error C2371: 'sint16' : redefinition; different basic types

2 次查看(过去 30 天)
Hi, I am new to s-functions. And I am trying to write s-function using basic c mex s-function template. I am getting this error, "c_sample\usertypes/usertypes.h(10) : error C2371: 'sint16' : redefinition; different basic types" and other errors as well. I have attached the files in .zip format. Please help resolve the issue.
I would like to understand how to include multiple .c and .h files while writing handwritten c mex s-functions.
Note: tools used are Matlab2016b and compiler is windows sdk 7.1
Please consider c_sample_4.zip file for files (syntax errors are removed). But still getting below erros.
>> mex c_sample_4_sfun.c
Building with 'Microsoft Windows SDK 7.1 (C)'.
Error using mex
c_sample_4_sfun.c
d:\new folder\c_sample_4\common\../usertypes/usertypes.h(10) : error C2371: 'ft_sint16' : redefinition; different basic types
d:\new folder\c_sample_4\common\../usertypes/usertypes.h(7) : see declaration of 'ft_sint16'
d:\new folder\c_sample_4\common\../usertypes/usertypes.h(11) : error C2371: 'ft_uint16' : redefinition; different basic types
d:\new folder\c_sample_4\common\../usertypes/usertypes.h(8) : see declaration of 'ft_uint16'
d:\new folder\c_sample_4\menu\menu.h(4) : error C2146: syntax error : missing ')' before identifier 'arg_a'
d:\new folder\c_sample_4\menu\menu.h(4) : error C2061: syntax error : identifier 'arg_a'
d:\new folder\c_sample_4\menu\menu.h(4) : error C2059: syntax error : ';'
d:\new folder\c_sample_4\menu\menu.h(4) : error C2059: syntax error : ','
d:\new folder\c_sample_4\menu\menu.h(4) : error C2059: syntax error : ')'
d:\new folder\c_sample_4\menu\../multiplication/multiplication_interface.h(4) : error C2061: syntax error : identifier 'multiplication'
d:\new folder\c_sample_4\menu\../multiplication/multiplication_interface.h(4) : error C2059: syntax error : ';'
d:\new folder\c_sample_4\menu\../multiplication/multiplication_interface.h(4) : error C2059: syntax error : 'type'
d:\new folder\c_sample_4\menu/menu.c(8) : error C2061: syntax error : identifier 'output_mult'
d:\new folder\c_sample_4\menu/menu.c(8) : error C2059: syntax error : ';'
d:\new folder\c_sample_4\menu/menu.c(8) : error C2513: '/*global*/ ' : no variable declared before '='
d:\new folder\c_sample_4\menu/menu.c(19) : error C2065: 'output_mult' : undeclared identifier
d:\new folder\c_sample_4\menu/menu.c(19) : warning C4013: 'multiplication' undefined; assuming extern returning int
D:\New folder\c_sample_4\c_sample_4_sfun.c(157) : error C2100: illegal indirection
D:\New folder\c_sample_4\c_sample_4_sfun.c(158) : error C2100: illegal indirection
D:\New folder\c_sample_4\c_sample_4_sfun.c(163) : error C2065: 'output_mult' : undeclared identifier
**************************************

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB Compiler 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by