string - 与空字符串串联会引发 ERR :INVALID DIM

标签 string string-concatenation ti-basic

在 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/

相关文章:

c++ - .c_str() 怪异?数据变化无缘无故?

java - 将 String 设置为可点击的 URL

postgresql - 在 Postgresql 中创建生成的列时出错

java - 向字符串数字添加零的有效方法?

python - 检查字符串列表是否被准确找到 n 次

python - 使用 Pandas 删除/替换行中的字符后替换数据帧值

java - 格式化后拆分字符串并拼接的方法

calculator - TIBASIC : How can one prompt a multivariable expression?

ti-basic - 是否有清除 Y 变量的命令?

floating-point - TI 操作系统如何编码才不会出现浮点错误?