如何将字母添加到字符串中。例如,我有:
str: .asciiz "abcdefghijklmnopqrstuvwxyz"
我想将字母a添加到字符串的末尾,以便在打印出字符串时显示“abcdefghijklmnopqrstuvwxyza”。
我试过
la $t0, str
lb $t1, 0($t0)
add $t0, $t0, 25
sb $t2, 1($t0) # assume that $t2 contains the character a
非常感谢任何帮助!
答案 0 :(得分:0)
你不能只是在没有空间的情况下增长一个字符串,以便成长为。在这种情况下,您将使用'a'
覆盖NULL终止符,这可能会导致以后出现各种问题。
您可以在字符串后面分配一些额外的空格:
str: .asciiz "abcdefghijklmnopqrstuvwxyz"
extra_space: .space 32
然后在最后添加'a'
可以这样做:
la $t0,str+26
li $t1,'a'
sb $t1,($t0) # append an 'a' to the string
sb $zero,1($t0) # add a NULL terminator after the 'a'