Using matlab command from VS2013/C++ system() call to exeute a script - fprintf issue
Show older comments
Hello.
I have a basic MATLAB script to read a value from a txt file, process the value (simple multiply) then output the result to a file. If I the call following from Windows cmd line, it works as expected i.e. I see the output file generated:
C:\Users\Me\Documents\MATLAB>matlab -r matlab_test -wait
If I call the following from a basic VS2013 C++ App, MATLAB opens and appears to execute the script but no output file is created:
int32_t status = system("\"C:\\Program Files\\MATLAB\\R2015a\\bin\\matlab\" -r matlab_test -wait");
Note 'status' returns 0.
The following is the MATLAB script (matlab_test.m):
fileIP = fopen('input_data.txt','r'); fileOP = fopen('output_data.txt','w');
a = fscanf( fileIP, '%d' ); b = 2; c = a * b;
fprintf( fileOP, '%d\n', c );
fclose( fileIP ); fclose( fileOP );
quit;
I am using MATLAB 2015a/64-bit.
1 Comment
Steven Bridges
on 16 Apr 2015
Accepted Answer
More Answers (0)
Categories
Find more on Variables in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!