![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 14.01.2011
Сообщений: 6
|
![]()
Визуал студио.
Все вводится нормально, но ступорится на банальном вводе цифры в printf("Vozrast u4itelya: "); cin >> age; далее программа перепрыгивает через след. ввод и выполняет функцию uuu.show_uchit(); Самое непонятное, что куда этот СИН не сунь, после него всегда след. ввод пропускается. Что за нах =( // Классы.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <conio.h> #include <stdio.h> #include <iostream> using namespace std; class spisok{ //главный класс protected: char name[20]; char soname[20]; }; class uchitelya : spisok{ //производный класс учителя public: char predmet[15]; int age; void puts_uchit(){ //функция ввода данных учителей printf("Imya u4itelya: "); gets_s(name); printf("Familiyu u4itelya: "); gets_s(soname); printf("Vozrast u4itelya: "); cin >> age; printf("Kakoi predmet vedet: "); gets_s(predmet); } void show_uchit(){ //функция вывода данных учителей printf("%s %s %2d %s", name, soname, age, predmet); } }; int _tmain(int argc, _TCHAR* argv[]) { uchitelya uuu; uuu.puts_uchit(); uuu.show_uchit(); _getch(); return 0; } |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 12.01.2011
Сообщений: 186
|
![]()
Workaround:
Код:
Lingua c++ non penis caninus est.
|
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 14.01.2011
Сообщений: 6
|
![]()
Переписала на scanf("%d", &age); толку нет, а вот если без указателя & то программа падает, что-то с памятью? А вот то что вы написали страшная весчь, плохо понимаемо %( В учебнике по визуал студио 2009 года нааписано через принтф вывод делать, вот и...
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 12.01.2011
Сообщений: 186
|
![]() Код:
Код:
scanf и cin оставляют в потоке \n, который gets и считывает.
Lingua c++ non penis caninus est.
|
![]() |
![]() |
![]() |
#5 | |
Новичок
Джуниор
Регистрация: 14.01.2011
Сообщений: 6
|
![]()
scanf("%d\n",&age); выдал такое:
![]() как-то радостно пошло задом наперед: сначала потребовал ввод в "predmet", а потом уже написал текст что нужно это самое "предмет" ввести... анриал какой-то О.о как это вообще? Строчки кода написаны в другой последовательности О.О Цитата:
|
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 12.01.2011
Сообщений: 186
|
![]()
Нда. Не очень хорошее решение. Тогда используйте
Код:
Lingua c++ non penis caninus est.
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 31.10.2010
Сообщений: 53
|
![]()
я с этим сталкивался
здесь cin выводит ошибку попробуйте её поймать при помощи конструкции try-catch, а уже зависимо от неё ищите решение |
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 09.11.2009
Сообщений: 104
|
![]()
2Flu
члены класса создаются в том порядке в котором они были объявленны в классе. Это если вы на основании адресов переменных решили что сначало требует ввод. хотя у вас ясно написано что и как выводится printf("%s %s %2d %s", name, soname, age, predmet); путаете сами себя =) В строчке cin>>age; считывание идет до первого пробельного символа. Возврат каретки - пробельный символ. Поэтому он остается в буфере и gets_s его мгновенно считывает и возвращает пустую строку. решение проблемы это использовать однородные операторы ввода вывода. Последний раз редактировалось like-nix; 14.01.2011 в 05:37. |
![]() |
![]() |
![]() |
#9 |
:D
Форумчанин
Регистрация: 26.09.2010
Сообщений: 570
|
![]()
cin.flush(); после cin пробовали?
Пишу ПО, создаю сайты, делаю курсовые работы, за деньги
C#, .NET, MS SQL, AngularJS, HTML, jQuery |
![]() |
![]() |
![]() |
#10 |
Новичок
Джуниор
Регистрация: 14.01.2011
Сообщений: 6
|
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не могу понять, в чем ошибка | FlashProStar | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 2 | 01.12.2010 12:20 |
Немогу понять в чем дело! | BelialL | Помощь студентам | 3 | 09.11.2010 22:16 |
Не могу понять в чем проблема | Lecter2009 | БД в Delphi | 7 | 09.09.2010 08:48 |
Не могу понять в чем проблема | BaUruk | Общие вопросы C/C++ | 3 | 12.10.2009 10:43 |
НЕ могу понять в чем проблема! | KNatalia | Microsoft Office Excel | 2 | 18.08.2009 02:03 |