std::cout << "Test";
char *c = new char[L];
fgets(c, L, stdin);
std::cout << c;
}
fgets не дает ввести информацию, программа ведёт себя, будто его нету(с cin.getline таже фигня). Что я не так делаю?
возьми std::string строку - std::string s; std::cin >> s; std::cout << s;
Не могу. Задание для универа, надо именно с массивом символов работать
Странно, у меня все работает
Если просто так вызвать функцию, то да, всё работает, но вот мой вызов: 21 строка https://gist.github.com/LasteExile/c268d5c121e77d8f90a6ba449c131931
После default попробуй убрать break
Безрезультатно
Цикл повторяется, но считывания строки не происходит
Вы понимаете, что сложно искать ошибку в функции "first_c()", зная только её название, даже без понимания назначения?
Функцию и её назначения я указал выше
У меня все работает , без функций, видимо проблема в функциях
Тогда совершенно очевидно, что вы (а) мешаете ввод из std::cin/stdin и (б) должны не вводить перевод строки между выбором "c_or_cpp" и "Test"
Вызови два раза. Первый результат игнорируй. Проблема в том что в буфере потока к этому времени что-то осталось от предыдущего ввода, скорей всего, один перевод строки. Вот оно и вводится
Кстати, а меня будут бить палками если я буду инклудить <stdio.h>, а не <cstdio>? В результате разница какая-то будет?
Обсуждают сегодня