Форум программистов, компьютерный форум CyberForum.ru

cin.getline() - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Проверьте программу http://www.cyberforum.ru/cpp-beginners/thread792641.html
Доброго дня всем. Стоит такая задача: Выполните задание 2 лабораторной работы 1, но размерности двумерного массива спросите у пользователя, а память под двумерный массив захватите динамически. Причем размер двумерного массива может не совпадать с размером одномерного - продумайте поведение программы в этом случае (это не ошибка!). Собственно задание 2 лабы 1 заключается в следующем: Из...
C++ ООП в DOS Добрый день. Я новичок, недавно начал изучать c++ и задался таким вопрос, в какой среде разработки можно создавать программы с GUI для DOS (а именно FreeDOS). Интересует непосредственно среда разработки, а также то, какие библиотеки в ней имеются, заранее спасибо. http://www.cyberforum.ru/cpp-beginners/thread792639.html
C++ Ошибка в коде
Подскажите почему у меня vs выдает ошибку... #include <stdio.h> #include <conio.h> #include <iostream> #include <stdlib.h> #include <time.h> using namespace std;
Инстанцирование шаблона для различных типов C++
Помогите пожалуйста с программой... Нужно создать шаблон класса, для работы со структурой произвольного типа данных. В функции main() показать использование созданного класса, включая ситуации, приводящие к генерации исключений; показать инстанцирование шаблона для различных типов (int, float, string). queue.h #pragma once #include <string.h> #include <iostream> #include <conio.h>
C++ Переводчик с английского на русский http://www.cyberforum.ru/cpp-beginners/thread792628.html
программа переводит введенное (английское)слово на русский,что нужно добавить что бы она переводила 2 и более введенных слов не останавливаясь на переводе первого?"заранее спасибо" #include<iostream> #include<iterator> #include<map> #include<string> #include<fstream> #include<windows.h> #include <locale> using namespace std;
C++ Основы ООП. Создание стека через класс Приветствую всех пользователей форума. Относительно недавно начал осваивать ООП. Было необходимо выполнить следующее задание : нужно описать класс реализующий стек на примере формирования ж/д состава вагоны которого могут быть 2 типов. Конечно же есть некоторый жуткий прототип. Прошу уважаемых пользователей помочь мне в выявлении и пояснении этих ошибок. Среда Билдер. Вот прототип: #include... подробнее

Показать сообщение отдельно
tarkys
0 / 0 / 0
Регистрация: 22.02.2013
Сообщений: 6
22.02.2013, 20:44     cin.getline()
Вопрос заключается в следующем, собственно программа отказывается выполнять cin.getline(... , ...); (... - аргументы) в начале своей функции, если не написть эту строку дважды, грубо говоря он игнорит первый син.гетлайн(). Я был бы благодарен за решение этой проблемки xD
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
#include<iostream>
 
using namespace std;
 
struct phonebook{
        char Name[11];
        char Surname[21];
        char Phone [13];
    };
    phonebook mas[20];
 
int add(void)
{
    char Phone [13];
    char Name [11];
    char Surname [21];
    cout<<"Enter Name"<<endl;
    cin.getline(Name,11);// собственно вот
    cin.getline(Name,11);
    cout<<"Enter Surname"<<endl;
    cin.getline(Surname,20);
    cout<<"Enter Phone"<<endl;
    cin.getline(Phone,13);
    for(int i=0; i<strlen(Phone); i++)
        if(isdigit(Phone[i])==0)
            return 1;
    for(int i=0; i<20; i++)
    {
        if(mas[i].Phone[0]==0)
        {
            strcpy(mas[i].Phone,Phone);
            strcpy(mas[i].Name,Name);
            strcpy(mas[i].Surname,Surname);
            return 0;
        }
    }
    return 1;
}
 
int del(void)
{
    cout<<"Enter Phone Number"<<endl;
    char temp[13];
    cin.getline(temp,13);//та же фигня
    cin.getline(temp,13);
    for(int i=0;i<20;i++)
    {
        if(strcmp(temp,mas[i].Phone)==0)
        {
            strcpy(mas[i].Name,"none");
            strcpy(mas[i].Phone,"none");
            strcpy(mas[i].Surname,"none");
            cout<<"done"<<endl;
        }
        return 0;
    }
    return 1;
}
 
int search(void)
{
    cout<<"Enter Phone Number"<<endl;
    char temp[13];
    cin.getline(temp,13);// и опять
    cin.getline(temp,13);
    for(int i=0;i<20;i++)
    {
        if(strcmp(temp,mas[i].Phone)==0)
        {
            cout<<mas[i].Phone<<" "<<mas[i].Name<<" "<<mas[i].Surname<<endl;
        }
    }
    return 1;
}
 
int output(void)
{
    //cout<<"Name\tSurname\t\tPhone\n";
    for(int i=0; i<20; i++)
    {
        cout<<mas[i].Name<<"\t"<<mas[i].Surname<<"\t"<<mas[i].Phone<<endl;
    }
    return 1;
}
 
int menu (void)
{
    m1:cout<<"1-ADD\n2-DEL\n3-SEARCH\n4-SHOW\n5-EXIT"<<endl;
    cout<<"Input Field ";
    char mn;
    cin.sync();
    cin.clear();
    cin>>mn;
    switch(mn)
    {
    case '1': 
        system("cls");
        add();
        goto m1;
        break;
    case '2':
        system("cls");
        del();
        goto m1;
        break;
    case '3':
        system("cls");
        search();
        goto m1;
        break;
    case '4':
        system("cls");
        output();
        goto m1;
    case '5':
        return 0;
        break;
    default:
        system("cls");
        cout<<"Your IQ below 60, plz try again"<<endl;
        goto m1;
    }
}
 
int main()
{
    do
    {
        //char e[6];
        char e;
        bool f=false;
        system("cls");
        cout<<"type <<q>> to exit, any another input charecter"/*or character set*/" = enter menu"<<endl;
        cin.sync();
        cin.clear();
        //cin.getline(e,5);
        cin>>e;
        //if(strcmp(e,"exit")==0)
        if(e=='q')
            return 0;   
        else
        {
            system("cls");
            menu();
            f=true;
        }
    }while(true);
    cin.get();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 01:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru