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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.73
electromind
0 / 0 / 0
Регистрация: 11.06.2009
Сообщений: 55
#1

Cтроковые функции и указатели - C++

21.09.2009, 11:09. Просмотров 1768. Ответов 15

в общем задача такая
пользователь вводит ФИО, затем номер телефона в строковый массив
сколько угодно раз до нажатия определенного символа (допустим 0-exit)
затем предлагается найти по номеру ФИО или наоборот с помощью строковых функций...

пропустил 4 занятия в т.ч. и тему с указателями
не могу понять как правильно вводить данные в массив (как создавать и т.д.)
выборку из массива я сам сделаю...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.09.2009, 11:09     Cтроковые функции и указатели
Посмотрите здесь:

Шаблонные функции и указатели на функции - C++
Помогите доделать и исправить... Задание: 1. Создать структуру Прямоугольник, с полями Высота и Ширина. Создать массив объектов типа...

Указатели на Функции - C++
Прошу помогите мне понять это условие,уже прочитал кучу информации по поводу указателей,но все равно мало,что уложилось в моем...

Функции, указатели - C++
Помогите, я хочу использовать индекс из ф-ии Points в ф-ие main. Пишет необработанное исключение... нарушение прав доступа при чтении по...

Указатели на функции - C++
Помогите,пожалуйста) Нужно продемонстрировать использование указателей на функции на ниже приведенном примере на всех имеющихся в ней...

Указатели и функции - C++
Доброго времени суток. Прошу помощи у пользователей данного форума) Значит стоит такая вот задача: В командной строке задаются...

Указатели на функции - C++
Народ! Прошу у вас помощи ещё раз! Дано такое задание: С заданной точность E (Е>0) вычислить площадь заштрихованной фигуры Метод...

функции, указатели - C++
Ввести 2 массива из N неотрицательных чисел разной размерности. Считать N≤100. Конец ввода элементов индицирует ввод отрицательного числа. ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kostarev
1 / 1 / 0
Регистрация: 15.07.2009
Сообщений: 25
21.09.2009, 11:28     Cтроковые функции и указатели #2
Тебе поможет динамический массив и записи
Читай книги объектно ориентированное-программирование
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
21.09.2009, 11:31     Cтроковые функции и указатели #3
kostarev, можно обойтись и без ООП, просто объявить
C++
1
2
3
4
5
struct User
{
    char FIO[90];
    int NPhone;
};
и с ней работать. Создать массив таких структур и все
electromind
0 / 0 / 0
Регистрация: 11.06.2009
Сообщений: 55
21.09.2009, 11:45  [ТС]     Cтроковые функции и указатели #4
Цитата Сообщение от M128K145 Посмотреть сообщение
kostarev, можно обойтись и без ООП, просто объявить
C++
1
2
3
4
5
struct User
{
    char FIO[90];
    int NPhone;
};
и с ней работать. Создать массив таких структур и все
вся загвоздка что структуры мы еще не проходили и соответственно не могу решить используя данную конструкцию...
хотя класс struct значительно облегчил бы жизнь в данном случае.
TanT
эволюционирую потихоньку
465 / 463 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
21.09.2009, 12:24     Cтроковые функции и указатели #5
А что вы проходили? стандарные контейнеры были? ИМХО, STL - просто, легко и надёжно.
electromind
0 / 0 / 0
Регистрация: 11.06.2009
Сообщений: 55
21.09.2009, 12:33  [ТС]     Cтроковые функции и указатели #6
Цитата Сообщение от TanT Посмотреть сообщение
А что вы проходили? стандарные контейнеры были? ИМХО, STL - просто, легко и надёжно.
к сожалению нет
были указатели, функции, массивы, циклы (в обратном порядке ) вот сейчас начались строки и строковые функции и в связи с этим задали такую задачку
указатели и массивы динамические я пропустил в силу определенных обстоятельств
и теперь без них, хоть убей, не могу понять с чего начать
как выделить динамический массив и загонять туда данные =\
а ДЗ сдавать через 5-6 часов...
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
21.09.2009, 12:49     Cтроковые функции и указатели #7
По простому:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <string.h>
#define MAXDATA 3
#define MAXLEN 256
 
int main(void)
{
    int i, ndata;
    char data[MAXDATA][MAXLEN], strfind[MAXLEN], *p;
 
    printf("Введите ФИО и номер телефона:\n");
    for(i = 0; i < MAXDATA; i++)
        if(fgets(data[i], MAXLEN, stdin) == NULL)
            break;
    ndata = i;
 
    printf("Что ищем? ");
    scanf("%s", strfind);
    for(i = 0; i < ndata; i++)
        if( (p = strstr(data[i], strfind)) != NULL)
            printf("Найдено: %s", data[i]);
    return 0;
}
electromind
0 / 0 / 0
Регистрация: 11.06.2009
Сообщений: 55
21.09.2009, 14:17  [ТС]     Cтроковые функции и указатели #8
Добавлено через 40 минут
вобщем спасибо но множество ф-ций мы еще не проходили например fgets ((
TanT
эволюционирую потихоньку
465 / 463 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
21.09.2009, 14:22     Cтроковые функции и указатели #9
указатели и массивы динамические я пропустил в силу определенных обстоятельств
Эт ты конечно зря, самое оптимально, по-моему, использовать здесь список. Примеров много в нете. но что-то мне подсказывает, что вы их тоже не проходили
electromind
0 / 0 / 0
Регистрация: 11.06.2009
Сообщений: 55
21.09.2009, 14:35  [ТС]     Cтроковые функции и указатели #10
ладно...
попробуем по другому
мне нужен динамический двухмерный строковый массив
как выделить ему память не могу разобраться
C++
1
char *data = new char [];
это для одномерного как я понимаю...
а для двухменого как ?
TanT
эволюционирую потихоньку
465 / 463 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
21.09.2009, 15:49     Cтроковые функции и указатели #11
C++
1
2
3
char **pArray = new char *[maxlen];
 
 pArray[i] = new char[];
electromind
0 / 0 / 0
Регистрация: 11.06.2009
Сообщений: 55
21.09.2009, 16:29  [ТС]     Cтроковые функции и указатели #12
проблема ...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <iostream>
#include <string.h>
using namespace std;
void main()
{
    const int maxlen=256; 
    char **pArray = new char *[maxlen];
    char end;
    for (int i=0;i<maxlen;i++)
    {
        pArray[i] = new char[];
        cout<<"\nVvedite nomer F.I.O. i nomer telefona: ";
        gets(pArray[i]);
        cout<<"\nProdolzhaem vvod? (Y/N)";
        cin>>end;
        if (end=='n'||end=='N')
            break;
    }
}
на первой итерации могу ввести номер телефона
на второй программа пролетает и останавливается на выборе вводить дальше или нет =\
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
21.09.2009, 19:12     Cтроковые функции и указатели #13
electromind, ты в одну строку должен вводить телефон и ФИО
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
21.09.2009, 19:23     Cтроковые функции и указатели #14
electromind, в конце цикла поставь cin.ignore(), в потоке остается ненужный символ новой строки.
M128K145
Эксперт С++
8283 / 3502 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
21.09.2009, 19:51     Cтроковые функции и указатели #15
gets - это вроде не плюсовая функция. Если полностью на С++, то
так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void main()
{
    const int maxlen=256; 
    char pArray[maxlen][90];
    char end;
    for (int i=0;i<maxlen;i++)
    {
        cout<<"\nVvedite nomer F.I.O. i nomer telefona: ";
        cin.getline(pArray[i], 90);
        cout<<"\nProdolzhaem vvod? (Y/N)";
        cin>>end;
        if (end=='n'||end=='N')
            break;
        cin.ignore();
    }
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.09.2009, 11:09     Cтроковые функции и указатели
Еще ссылки по теме:

Указатели на функции - C++
Подскажите должен ли работать этот код(самый первый). И как он работает

Указатели на функции - C++
Что означает операция Type::* F; и почему она работает только, когда Type2(Type::* F);

Указатели на функции - C++
Привет, я хочу объявить указатель на функцию, которая принимает в качестве аргумента указатель на функцию, которая принимает в качестве...

Указатели на функции - C++
Передать в ф-цию Action два массива и указатель на функции. По выбору пользователя (меню) вызывать функции работы с массивами (поиск миним,...

Указатели на функции - C++
Решите задачу , используя один указатель на функцию . Разработайте четыре функции над двумя целыми параметрами, соответствующими...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
electromind
0 / 0 / 0
Регистрация: 11.06.2009
Сообщений: 55
22.09.2009, 11:09  [ТС]     Cтроковые функции и указатели #16
всем спасибо за помощь
проскакивает из-за того, когда вводится имя и номер, они разделяются пробелом... а т.к. cin работает до первого пробела и получается такая кака )))
еще раз благодарю всех за участие в обсуждении, тему можно закрывать.
Yandex
Объявления
22.09.2009, 11:09     Cтроковые функции и указатели
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru