Main Content

Create C/C++ S-Functions

Write S-functions using C or C++ code

You can create C/C++ S-functions by writing an S-function from scratch, using the S-function builder, or using the Legacy Code Tool. Each of these approaches involves a tradeoff between the ease of writing an S-function and the features supported by the S-function.


S-FunctionInclude S-function in model
S-Function BuilderIntegrate C or C++ code to create S-functions


About C/C++ S-Functions

Create a Basic C MEX S-Function

Construct the code to create an S-function.

Simulink Engine Interaction with C S-Functions

Learn how the Simulink® engine interacts with a C S-function to create and debug your own C S-functions.

S-Function Callback Methods

Implement S-function callback methods.

S-Function SimStruct Functions

Access Simulink data structure through SimStruct macros and functions.

Create C S-Functions

Templates for C S-Functions

Use code templates as starting points for writing your own C S-functions.

C MEX S-Function Examples

Model systems through C MEX S-function examples.

S-Function Examples

Create various types of S-functions and S-function features.

MATLAB Data in C S-Functions

Perform mxArray manipulation in C S-functions.

Convert Level-1 C MEX S-Functions

Convert S-functions written for earlier Simulink releases to work with the current version.

Create C++ S-Functions

Create C++ Source File

Create a C++ S-function from a C S-function.

Make C++ Objects Persistent

Create C++ objects that persist across invocations of the S-function.

Build C++ S-Functions

Build a C++ S-function.