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

2 простых вопроса(строка и массив структур) - C++

Восстановить пароль Регистрация
 
Imba-Crafter
1 / 1 / 0
Регистрация: 13.10.2010
Сообщений: 38
15.10.2010, 08:31     2 простых вопроса(строка и массив структур) #1
Доброе! Только начал изучать С и появилось 2 небольших вопроса. Надеюсь вам не будет лень ответить

1. Как работать со строкой. Я так понимаю через масива чаровский. Ну т.е. записывать каждое нажатие клавиши в последующий элемент масива? Если не сложно, киньте код

2. Собсвенно можно создать структуру. А как массив структур? в делфи я то знаю...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
RUSya82
 Аватар для RUSya82
236 / 114 / 3
Регистрация: 15.10.2010
Сообщений: 395
15.10.2010, 09:11     2 простых вопроса(строка и массив структур) #2
1.Вообще строки С - это целый раздел, так что если изучаете, то советую всё таки почитать.
Вы правы, строка в С - это массив типа char, но отличается наличием нуль символа (\0). То есть строка "Hello" будет содержать не 5 символов, а шесть. Существует целый набор функций для работы со строками, тоже советую почитать. Вот пример ввода строки С:
Код
char my_string[80]; //объявляем строку, не более 80 символов
cout << "Enter my string\n";
cin.getline(my_string,80);//вводим строку 
cout << "end of output\n"
строка вводится с помощью функции-члена getline. Первый аргумент - это имя строки, в которую будет производиться ввод, второй аргумент - это максимальное количество символов(может быть и меньше), но не забывайте и про нуль символ!
2.Определите структуру, и объявите массив переменных типа структуры:
Код
struct Den{
...//описание полей
...
...
};
Den Array[100];//объявление массива Array переменных типа Den
Imba-Crafter
1 / 1 / 0
Регистрация: 13.10.2010
Сообщений: 38
15.10.2010, 09:42  [ТС]     2 простых вопроса(строка и массив структур) #3
Допустим нужна структура TRAIN.. Ну вот код. Делает какую-то хрень

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
#include "stdafx.h"
#include "stdio.h"
#include "conio.h"
 
struct train
{
    char name[15];                  //название пункта
    float num;                         //норем
    char o_time[10];                //время отправдения
} mas[100];
 
int _tmain(int argc, _TCHAR* argv[])
{
    int n,m,i;
    char z;
 
    printf("\n\tn= ");                                //сколько записей?
    scanf("%d",&n);                     
    for (m=1; m!=n+1; m+=1)                   //вводим..
    {
        printf("\t\nPunkt= ");
        for (i=1; (z=getchar())!='\n'; i++)
            mas[m].name[i]=z;
               printf("\t\nNomer= ");
        scanf("%d", &mas[m].num);
        printf("\t\nVremia= ");
        for (i=1; (z=getchar())!='\n'; i++)
            mas[m].o_time[i]=z;
    }
 
    return 0;
}
dihlofos
Бродяга
 Аватар для dihlofos
302 / 256 / 17
Регистрация: 27.08.2010
Сообщений: 553
15.10.2010, 09:57     2 простых вопроса(строка и массив структур) #4
Зачем вводить строку посимвольно? попробуйте тот же scanf, ну или gets()
C
1
2
3
4
5
6
7
8
9
for (i=0; i<n; i++)                   //вводим..
 {
        printf("\t\nPunkt= ");
    scanf("%s",mas[i].name);
    printf("\t\nNomer= ");
    scanf("%f", &mas[i].num);
    printf("\t\nVremia= ");
    scanf("%s", mas[i].o_time);
 }
Imba-Crafter
1 / 1 / 0
Регистрация: 13.10.2010
Сообщений: 38
15.10.2010, 10:04  [ТС]     2 простых вопроса(строка и массив структур) #5
о.. пасиб) все работает)
Yandex
Объявления
15.10.2010, 10:04     2 простых вопроса(строка и массив структур)
Ответ Создать тему
Опции темы

Текущее время: 11:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru