Превратить массив символов в строку?

Для Eclipse работало следующее выражение:

Foo

jadajada Bar "

Регулярное выражение:

Foo[\S\s]{1,10}.*Bar*
0
задан Kenny Blum 3 March 2019 в 11:26
поделиться

1 ответ

Единственная разница между массивом символов и строкой состоит в том, что строка оканчивается на «\ 0».

Таким образом, вы можете поставить '\ 0' в конце hexval (это должен быть массив размера 5). Если это невозможно, создайте новый массив и скопируйте в него символы.

Если у вас есть строка, вы можете использовать syscall 4 для ее печати. ​​

Кстати, hexVal был не массивом символов, а массивом слов, и ваш код был взломан.

hexVal: .byte 4 {contains '0', 'x', '8', '0'}
hexstr: .byte 5

.text
    addi  $t0,zero,4 # i=4
    li $t1,hexVal
    li $t2,hexstr
copy:
    # copy hexval[i] to hexstr[i]
    lb $t3, 0($t1)
    sb $t3, 0($t2)
    # increments
    addi $t0,-1
    addi $t1,1
    addi $t2,1
    beq $t0,zero, copy
    nop
end:
    sb zero,0($t2) # add '\0' at the end of hexStr
    # then print hexStr a string with syscall 4
    addi $v0, zero, 4 
    li $a0, hexStr
    syscall
0
ответ дан Alain Merigot 3 March 2019 в 11:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: