以下命令:
theta = zeros(2, 1);
printf(theta)
提供错误:error: printf: format TEMPLATE must be a string
是否有将theta
转换为字符串或打印theta
值的功能?
阅读八度文档:http://www.network-theory.co.uk/docs/octave3/octave_140.html这似乎有可能吗?
答案 0 :(得分:1)
matstr
功能
对于我的案例:printf(mat2str(theta , 2))
src:https://www.gnu.org/software/octave/doc/interpreter/Converting-Numerical-Data-to-Strings.html
答案 1 :(得分:1)
如果您尝试冲刺到stdout
流,那么您可以使用printf
而无需转换为字符串,因为它会为您执行此操作,但它可以像任何字符串格式化函数,在任何语言中,第一个参数是一个字符串,后跟要格式化并插入该字符串的变量。对于你的简单案例:
printf('%f', theta)
如果您只是想尝试打印到控制台,我建议您使用sprintf
或display
。 Matlab没有printf
命令,我总是提倡尽可能将Octave代码直接移植到Matlab。
答案 2 :(得分:0)