Venkatesh Pyla Ответов: 2

Как присвоить символьные значения целочисленным переменным ? и распечатайте его в целочисленном формате.


#включить<stdio.h>
пустота главная()
{
char ch1='1';
char ch2='5';
int n;
// я хочу присвоить значение 15 целочисленной переменной 'n'
---------------------------------------------;
printf("после преобразования n равно %d",n);
геч();
}

Что я уже пробовал:

требуемый выход : после преобразования n равно 15

2 Ответов

Рейтинг:
2

OriginalGriff

Из отдельных персонажей это немного сложно - вам в основном придется делать это самостоятельно:

char ch1='1';
char ch2='5';
int n;
n = (ch1 - '0') * 10 + (ch2 - '0');
printf("%d\n", n);
Но обычно такие преобразования выполняются из строки символов (массива значений char) с использованием стандартных функций: Библиотечная функция C - sscanf()[^]


Venkatesh Pyla

какой процесс происходит в (ch1-'0')?
пожалуйста, кратко объясните.

OriginalGriff

"пожалуйста, кратко объясните."
Вычитание.

Может быть, вы хотите получить более подробное объяснение?

CPallini

:-Д

Рейтинг:
1

phil.o

Вы также можете начать с а char массив и используйте стандартную функцию C для получения целого числа из символьного массива:

char chars[3] = { ch1, ch2, '\0' };
n = atoi(chars);


CPallini

5.