Я пытаюсь преобразовать целое число (более 9, как показано ниже 9, которое легко преобразует процесс ниже) в символ. Но после преобразования я получаю несколько символов типа «?». Ниже приведен код:преобразовать целое число (со значением больше 9) в символ
#include <stdio.h>
int main(void) {
int i = 15;
char c;
c=i+'0';
printf("%c", c);
return 0;
}
output: ?
Expected output: 15
Почему вы ожидаете, что выход будет 15? – Michelle
Вы не хотите преобразовывать его в символ, вы хотите преобразовать его в строку. Для этого сеть полна помощи. Как вы можете видеть, ваш ожидаемый результат имеет * два * символа в нем. –
Чтобы узнать, что происходит, ознакомьтесь с таблицей [ASCII] (http://www.asciitable.com/). – Michelle