Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
call_scilab
call_scilab is an interface which provides the ability to call Scilab engine from C/C++ code
Description
Scilab offers the possibility to be called from a native (C/C++) application.
Thanks to this module, it is possible to call Scilab from C/C++ in order to interface Scilab's features from another code/application or to be able to interface Scilab's features from another language.
Since Scilab 5.2.0, all Scilab datatype can be handle by call_scilab. This is done thanks to API_Scilab
This help describes the features of the call_scilab API.
Note: The javasci module is based on call_scilab.
Note: old APIs (stackX.h) will not be available after Scilab 6.0 (included).
Examples
// A simple call_scilab example #include <stdio.h> /* stderr */ #include "api_scilab.h" /* Provide functions to access to the memory of Scilab */ #include "call_scilab.h" /* Provide functions to call Scilab engine */ // Filename: simple_call_scilab.c int main(void) { /****** INITIALIZATION **********/ #ifdef _MSC_VER if ( StartScilab(NULL,NULL,NULL) == FALSE ) #else if ( StartScilab(getenv("SCI"),NULL,NULL) == FALSE ) #endif { fprintf(stderr,"Error while calling StartScilab\n"); return -1; } /****** ACTUAL Scilab TASKS *******/ SendScilabJob("myMatrix=['sample','for the help']"); SendScilabJob("disp(myMatrix);"); // Will display !sample for the help ! SendScilabJob("disp([2,3]+[-44,39]);"); // Will display - 42. 42. /****** TERMINATION **********/ if ( TerminateScilab(NULL) == FALSE ) { fprintf(stderr,"Error while calling TerminateScilab\n"); return -2; } return 0; }
History
Version | Description |
5.4.0 | New methods added:
|
See also
- api Scilab — api_scilab is the Scilab 6 interface to access Scilab variables.
- Compile and run with call_scilab — How to compile a native application based on or using Scilab
- Matrix Management — How to manage Scilab's variable read and write process using call_scilab and api_scilab
- Boolean Management — How to manage Scilab's boolean read and write process using call_scilab and api_scilab
- Complex Management — How to manage Scilab's complex variable read and write process using call_scilab
- String Management — How to manage Scilab's String read and write process using call_scilab and api_scilab
Report an issue | ||
<< Boolean management | call_scilab API (Scilab engine) | Compile and run with Call Scilab >> |