Change format in created C code

2 visualizzazioni (ultimi 30 giorni)
Luis Ruiz
Luis Ruiz il 18 Giu 2018
Modificato: Walter Roberson il 27 Dic 2018
I am using Matlab coder to port code to C, e.g. for the next function:
function sum_out = my_sum( x )
sum_out = 0;
for i=1:size(x,1)
sum_out = sum_out + x(i);
end
end
The generated C code is:
double my_sum(const double x[10])
{
double sum_out;
int i;
sum_out = 0.0;
for (i = 0; i < 10; i++) {
sum_out += x[i];
}
return sum_out;
}
Is there a way to make the indentation 4 spaces? Also, I would like to have the curly brackets in a separate line.

Risposta accettata

Ryan Livingston
Ryan Livingston il 19 Lug 2018
The Coder configuration settings IndentSize and IndentStyle will let you achieve the changes you want:

Più risposte (1)

upol
upol il 27 Dic 2018
Modificato: Walter Roberson il 27 Dic 2018
I am trying to convert this simple code into excutable using matlab coder.
function y = hello_world
%#codegen
y = 'Hello World!';
converting to source code C works but when i change the build type to Executable
It gives me this error:
Build error: C compiler produced errors. See the Build Log for further details.
C:/PROGRA~3/MATLAB/SUPPOR~1/R2018b/3P778C~1.INS/MINGW_~1.INS/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/lib/../lib\libmingw32.a(lib64_libmingw32_a-crt0_c.o):crt0_c.c:(.text.startup+0x2e): undefined reference to `WinMain'
collect2.exe: error: ld returned 1 exit status
gmake: *** [C:/dummy/hello_world.exe] Error 1
The make command returned an error of 2
'An_error_occurred_during_the_call_to_make' is not recognized as an internal or external command,
operable program or batch file.
Error(s) encountered while building "hello_world":
### Failed to generate all binary outputs.
  1 Commento
Ryan Livingston
Ryan Livingston il 27 Dic 2018
Modificato: Ryan Livingston il 27 Dic 2018
I suggest posting new question rather than adding a question as an answer to an existing post. We frequently monitor new questions. New comments and answers may not be seen.
The linker error you see means that a C main function wasn't supplied as is required to compile an executable. The Documentation describes this in more detail with an example.

Accedi per commentare.

Categorie

Scopri di più su MATLAB Coder in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by