Fortran 什么';这两者之间的区别是什么';及&引用;在初始化字符串时?
因此,我可以用这两种语言在Fortran中初始化字符串Fortran 什么';这两者之间的区别是什么';及&引用;在初始化字符串时?,fortran,Fortran,因此,我可以用这两种语言在Fortran中初始化字符串 CHARACTER(LEN=4)::string string = "jklm" 及 有什么不同吗?看一下fortan文档,大多数情况下都是一样的。但是,如果您计划在字符串中使用单引号,请使用双引号将其括起来 // correct "John's Stuff" // wrong 'John's Stuff' 或者: // correct 'She said "Hey!"' // wrong "She said "Hey!"" 编辑
CHARACTER(LEN=4)::string
string = "jklm"
及
有什么不同吗?看一下fortan文档,大多数情况下都是一样的。但是,如果您计划在字符串中使用单引号,请使用双引号将其括起来
// correct
"John's Stuff"
// wrong
'John's Stuff'
或者:
// correct
'She said "Hey!"'
// wrong
"She said "Hey!""
编辑:顺便说一句,大多数编程语言也是如此。从功能上讲,它们是相同的。虽然“”看起来可读性更好一些,但没有任何区别 作为一个次要的(也许是微不足道的)点,这里没有初始化,只有赋值。“重要的概念是界定字符文字常量。”弗朗西斯卡勒斯感谢您的澄清。但我不太明白你的第二句话,即使我试着翻译。你的意思是说。。。我只将字符串赋给已经存在的字符串格式常量(“jklm”)?
'jklm'
是一个(字符)文字常量。这是一个由这四个字母组成的值。这样的常量可以用于初始化、赋值或其他许多方式,引号/撇号的解释不会改变这一点。因此,分隔符(“
或”
)告诉编译器“此处后面的内容形成字符串”和“此处后面的内容返回到字符串外部”并不特定于初始化,而是表示“常量”。[希望这并没有让事情变得不那么清楚…]还更正了“John”的内容“
和“John”的内容“
,即双引号或撇号。@HighPerformanceMark用于让我做噩梦的转义字符:)
// correct
'She said "Hey!"'
// wrong
"She said "Hey!""