Есть ли способ преобразования char в строку в C?Использование atoi с char
Я пытаюсь сделать так, как это:
char *array;
array[0] = '1';
int x = atoi(array);
printf("%d",x);
Есть ли способ преобразования char в строку в C?Использование atoi с char
Я пытаюсь сделать так, как это:
char *array;
array[0] = '1';
int x = atoi(array);
printf("%d",x);
Как насчет:
char arr[] = "X";
int x;
arr[0] = '9';
x = atoi(arr);
printf("%d",x);
Вам нужно выделить память для строки, а затем обнулить прекратить.
char *array;
array = malloc(2);
array[0] = '1';
array[1] = '\0';
int x = atoi(array);
printf("%d",x);
Или, проще:
char array[10];
array = "1";
int x = atoi(array);
printf("%d",x);
Если вы пытаетесь преобразовать числовой символ к междунар, просто используйте символ арифметику вычитать код ASCII:
int x = myChar - '0';
printf("%d\n", x);
char c = '1';
int x = c - '0';
printf("%d",x);
Вы можете преобразовать символ в строку через:
char string[2];
string[0] = '1';
string[1] = 0;
Строки заканчиваться символом NUL, который имеет значение 0.
простейшие ответа без необходимости использования каких-либо промежуточных буферов –