两个字符串的连接不起作用

时间:2015-06-30 09:15:31

标签: fortran string-concatenation

我有以下代码,但它不起作用:

 CHARACTER*260 xx, yy, zz     
  xx = 'A'   
  yy = 'B'
  zz = xx // yy

当我在Visual Studio中调试代码时

  • 变量xx包含'A'
  • 变量yy包含'B'
  • 变量zz包含'A'

为什么zz不包含'AB'?

1 个答案:

答案 0 :(得分:20)

您将xx定义为260个字符。分配较短的字符文字将导致填充空格。因此,xx包含A和259个空格。 yy包含B和259个空格。因此,连接的字符串将是'A' + 259个空白+ 'B' + 259个空格,总共520个字符。

由于zz长度仅为260个字符,因此会裁剪其余字符。

你想要做的是通过

实现的
zz = trim(xx) // trim(yy)

trim()从字符串中删除尾随空格。