gpt4 book ai didi

matlab - 谁能给我一些关于 MATLAB 中的 fprintf ('How about single quote(' ')?\n') 的解释?

转载 作者:行者123 更新时间:2023-12-02 09:10:44 26 4
gpt4 key购买 nike

>> fprintf('How about single quote('')?\n')
How about single quote(')?

输出是一样的:

>> fprintf("How about single quote(\')?\n")
How about single quote(')?

哪个更容易理解(转义字符由一个反斜杠'\'和一个字符(如'n')组成)

那么,在 MATLAB 中,反斜杠('\')是否可以通过单引号(')来表示转义字符?

最佳答案

Matlab 有 char vectors and strings .它们是不同的数据类型。字符向量用单引号括起来 ('):

disp('This is a char vector')

而字符串使用双引号 ("):

disp("Hey, I am a string")

要在 char 向量中引入单引号,或在字符串中引入双引号,您复制它:

disp('Hey, what''s up?')
disp("Say ""Hi""")

在 char 向量中引入双引号,或在字符串中引入单引号,都没有问题:

disp('She said "yes"')
disp("What's the matter?")

当 char 向量或字符串用作 fprintf 的参数时,所有这些通常适用。此外,Matlab 的 fprintfsprintf 显然1\' 理解为 ',和\"作为"的同义词;但复制规则仍然适用。2 所以这些是等价的:

fprintf('I don''t like strings\n')
fprintf('I don\''t like strings\n')

这些都是:

fprintf("""Inconceivable!"", he retorted\n")
fprintf("\""Inconceivable!\"", he retorted\n")

fprintfsprintf 之外,\'\" 没有那些特殊含义。尝试

disp('\'' \"')
disp("\' \""")

<子>1我一直没能找到这个记录。
2原因大概是为了模仿C's fprintf behaviour ;但请注意,那里不需要重复。

关于matlab - 谁能给我一些关于 MATLAB 中的 fprintf ('How about single quote(' ')?\n') 的解释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52552130/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com