主要内容

mexPrintf(C 和 Fortran)

ANSI C PRINTF 样式输出例程

C 语法

#include "mex.h"
int mexPrintf(const char *message, ...);

Fortran 语法

#include "fintrf.h"
integer*4 mexPrintf(message)
character*(*) message

描述

注意

调用 C 和 C++ 库中函数的推荐方法是创建一个该库的 MATLAB® 接口。有关详细信息,请参阅从 MATLAB 调用 C/C++ (自 R2022a 起)或者,要使用 C++ 功能和 MATLAB Data API for C++ 编写 MEX 函数,请参阅编写可从 MATLAB(MEX 文件)调用的 C++ 函数

此例程在屏幕上和日志(如果正在使用日志)中打印一个字符串。它提供对已链接到 MATLAB 软件内部的标准 C printf 例程的回调,这会避免将整个 stdio 库链接到您的 MEX 文件中。

在 C MEX 文件中,调用 mexPrintf 而不是 printf 来显示字符串。

注意

如果您要在消息中使用文字 %,请在消息字符串中使用 %%,因为 %printf 具有特殊含义。否则会导致不可预测的结果。

输入参数

全部展开

要显示的字符串,在 C 语言中指定为 const char*,在 Fortran 中指定为 character*(*)。在 C 语言中,该函数支持 UTF-8 或本地代码页 (LCP) 编码,并且字符串可以包含由 ANSI® C printf 函数使用的转换设定。消息文本和转换参量的编码必须相同。

在 C 语言中,消息中使用的任何参量。每个参量必须有对应的转换设定。请参考您的 C 语言文档以获取 printf 转换表。

输出参量

全部展开

打印的字符数,包括使用反斜杠代码指定的字符,例如 \n\b,在 C 语言中返回为 int,在 Fortran 中返回为 integer*4

示例

要打开示例,请输入:

edit([fullfile(matlabroot,"extern","examples","mex","filename")]);

其中,filename 为:

要打开示例,请输入:

edit([fullfile(matlabroot,"extern","examples","refbook","filename")]);

其中,filename 为:

版本历史记录

全部展开