Const char нельзя присвоить сущность типа char - C (СИ)
Формулировка задачи:
Здравствуйте!
Начинаю изучать Си
И вот у меня немного не получается написать свою первую программу.
Интерпритатор ругается на: const char нельзя присвоить сущность типа char
Хочу попросить бывалых пояснить мне пожалуйста почему у меня сейчас возникает такая ошибка? Пояснив мне почему, я в будущем буду избегать таких ошибок!
Всем кто откликнется - очень благодарен!
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> int main() { char n = 0; char r; system("chcp 1251 > nul"); printf("Введите число от 0 до 99\n"); scanf("%2d", n); r = n == 1 ? "копейка" : "not" ; printf("%d %s", n, r); return 0; }
Решение задачи: «Const char нельзя присвоить сущность типа char»
textual
Листинг программы
$ cat ./shit.c && clang shit.c && ./a.out #include <stdio.h> #include <stdlib.h> #include <time.h> int main (int argc, char ** argv) { char *s1 = "копейка"; char * s2 = "not"; char ch; srand(time(0)); ch = rand() % 2 ? s1 : s2; fprintf(stdout, "ch = %X : s1 = %X : s2 = %X\n", ch); exit(EXIT_SUCCESS); } ch = FFFFFFD3 : s1 = E5D4B0D3 : s2 = E5D4B0C8 $
Объяснение кода листинга программы
- Программа начинается с подключения необходимых заголовочных файлов: stdio.h, stdlib.h и time.h.
- Определяется функция main, которая является точкой входа в программу.
- Внутри функции main инициализируются две строки: s1 и s2. Значение s1 установлено в
копейка
, а значение s2 установлено вnot
. - Инициализируется переменная типа char с именем ch.
- Засекается случайное число с помощью функции rand() и оператора модуля %.
- Результат операции приводится к типу char и присваивается переменной ch.
- В зависимости от значения переменной ch, выводится соответствующее значение из строк s1 или s2.
- Выводится значение переменной ch в шестнадцатеричной системе счисления, а также значения переменных s1 и s2 в шестнадцатеричной системе счисления.
- Программа завершается с помощью функции exit, возвращающей код успеха EXIT_SUCCESS.
- Значения переменных s1 и s2 выводятся на экран:
ch = FFFFFFD3 : s1 = E5D4B0D3 : s2 = E5D4B0C8
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д