Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
4 / 4 / 1
Регистрация: 24.02.2014
Сообщений: 102
1

Указатель на строку в структуре

21.03.2014, 22:38. Показов 1433. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ахой, товарищи.
Имею такой вопрос

дана структура
C
1
2
3
4
5
struct naww
{
  char *name;
  
}str[2];
как возможно простому смертному ее заполнить?) Спасибо
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.03.2014, 22:38
Ответы с готовыми решениями:

Указатель на структуру в структуре
Здравствуйте! Изучаю в Си структуры и возник вопрос, что означает последнее поле в данной...

Как записать в структуре строку с пробелами?
В структуре нужно записать строку с пробелами, но gets пропускает, а printf работает до пробела. ...

Указатель на строку неизвестного размера
Доброго времени суток. Возник вопрос при работе с символьными массивами. Если имеется указатель на...

Исправить функцию, возвращающую указатель на строку
Здравствуйте, не подскажите, как нужно подправить код? char* GetString() { char x; // локальный...

3
Заблокирован
21.03.2014, 23:49 2
Лучший ответ Сообщение было отмечено 1nquisitor как решение

Решение

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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>
 
struct naww
{  char *name;
}str[2];
 
 
int main() 
{   setlocale (LC_CTYPE, "Russian");
    char buf[BUFSIZ];
    int i;
 
    printf("\nВвод первой строки:\t");
    gets (buf);
 
    str[0].name = (char*) malloc (strlen(buf)+1);
    strcpy(str[0].name, buf);
 
    printf("\nВвод второй строки:\t");
    gets (buf);
 
    str[1].name = (char*) malloc (strlen(buf)+1);
    strcpy(str[1].name, buf);
 
    printf("\nЧто получилось:\n");
    for (i = 0; i<2; i++)
        printf("%3d\t%s\n", i+1, str[i].name);
 
    for (i = 0; i<2; i++)
        free (str[i].name);
 
    getchar();
    return 0;
}
0
4 / 4 / 1
Регистрация: 24.02.2014
Сообщений: 102
22.03.2014, 01:40  [ТС] 3
Один вопрос
что это такое?
C
1
char buf[BUFSIZ];
0
Заблокирован
22.03.2014, 02:07 4
Цитата Сообщение от 1nquisitor Посмотреть сообщение
что это такое?
Буфер для ввода строк.

BUFSIZ - константа, определенная в 89 строке stdio.h следующим образом:

C
1
#define BUFSIZ  1024
0
22.03.2014, 02:07
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.03.2014, 02:07
Помогаю со студенческими работами здесь

Не удается поместить строку или получить указатель
В следующую структуру мне необходимо положить размер и указатель на область памяти с результатом...

Как описать в структуре строку не через указатель
Есть структура struct InfoBuf { size_t Len; char Data; / ??? static InfoBufType*...

Чем отличаются указатель на строку и константный указатель на строку?
Просто обьясните, как такое возможно? char *a=&quot;fff&quot;; В чем отличие от этого? : const char...

Указатель в структуре
Как можно работать дальше с Abool как с массивом, обращаясь к нему как к члену структуры, т. е....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru