在 TI-BASIC 中,+
操作对于字符串连接来说是重载的(在这里,如果没有别的,TI-BASIC 加入了世界的其他部分)。
但是,任何涉及空字符串的连接尝试都会引发维度不匹配错误:
"Fizz"+"Buzz"
FizzBuzz
"Fizz"+""
Error
""+"Buzz"
Error
""+""
Error
为什么会发生这种情况,是否有一个优雅的解决方法?我一直在使用起始空格并在必要时截断字符串(并不总是有效)或使用循环一次添加一个字符(缓慢)。
最佳答案
最好的方法取决于你在做什么。
如果您有一个字符串(在本例中为 Str1)需要与另一个字符串(Str2)连接,并且您不知道它是否为空,那么这是一个很好的通用解决方案:
Str2
If length(Str1
Str1+Str2
如果您需要循环并每次向字符串添加内容,那么这是最好的解决方案:
循环之前:
" →Str1
在循环中:
Str1+<stuff_that_isn't_an_empty_string>→Str1
循环后:
sub(Str1,2,length(Str1)-1→Str1
还有其他情况,如果您有特定情况,那么您应该发布相关代码的简化版本。
希望这有帮助!
关于string - 与空字符串串联会引发 ERR :INVALID DIM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47753951/