Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 15.04.2009, 17:48   #1
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
По умолчанию Для чего используют typedef

Здравствуйте программисты! Набрёл на тему,там используется какой-то typedef, подскажите пожалуйста,что это такое,как с ним работать. И ещё,что такое структуры, не очень что отложилось у меня, где их использовать,как их создавать.
Вроде слышал,что ты создаёшь ею новый тип.
Заранне благодарен за ответ.

Последний раз редактировалось prikolist; 15.04.2009 в 17:54.
prikolist вне форума
Старый 15.04.2009, 18:11   #2
Goblin
Форумчанин
 
Регистрация: 24.11.2007
Сообщений: 196
По умолчанию

typdef определяет псевдоним для типа данных.
Например:
Код:
typedef int my_int;

int i;
my_int j;
Здесь переменные i и j одного типа данных.

Последний раз редактировалось Goblin; 15.04.2009 в 18:14.
Goblin вне форума
Старый 15.04.2009, 18:14   #3
Pashan
Пользователь
 
Регистрация: 18.03.2009
Сообщений: 89
По умолчанию

typedef - это определение нового типа данных на основе уже существующих.
Код:
typedef int my_number;
typedef char* my_string;
Структуры - типы данных, внутри которых содержатся различные поля различных типов, но все они "сгруппированы" вместе.
Код:
struct MyStruct
{
  int a, b, c;
  float e;
  my_string str; // :)
};
P.S. Почитай книжки и попиши программы. Иначе все равно ничего не поймешь.
Pashan вне форума
Старый 15.04.2009, 18:17   #4
Goblin
Форумчанин
 
Регистрация: 24.11.2007
Сообщений: 196
По умолчанию

Цитата:
Структура - конструкция большинства языков программирования, позволяющая содержать в себе набор переменных и функций.
Wikipedia.
Goblin вне форума
Старый 15.04.2009, 18:28   #5
Pashan
Пользователь
 
Регистрация: 18.03.2009
Сообщений: 89
По умолчанию

Ну по поводу функций в структурах можно поспорить. В С++ функции можно объявлять внутри структур, но не во всех языках можно. И вообще, изначально, как я понимаю, структуры придумали скорее для данных. А потом появилось ООП и понятие классов. Функции более свойственны классам.
Pashan вне форума
Старый 15.04.2009, 18:34   #6
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
По умолчанию

С typedef теперь всё понятно,только со структурами. Если,кто знает дайте больше информации о структурах,привидите пожалуйста,как в программе используются переменные описанные в структуре, вообще,какую роль играет структура, зачем она нужна?

Последний раз редактировалось prikolist; 15.04.2009 в 18:39.
prikolist вне форума
Старый 15.04.2009, 18:44   #7
Pashan
Пользователь
 
Регистрация: 18.03.2009
Сообщений: 89
По умолчанию

Код:
struct MyStruct;
{
  int a, b;
  float c;
};

// ...

MyStruct s;
s.a = 1;
s.b = 2;
s.c = 3.5;
Чтобы понять, когда и зачем их надо использовать, надо писать программы

Например, есть у тебя задача - хранить список с информацией о людях - ФИО, Адрес, Телефон, Номер паспорта и т.д. Как сделаешь?
Pashan вне форума
Старый 15.04.2009, 19:05   #8
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
По умолчанию

Может вот так, это я, на основе вашего примера попробывал в С++ Билдере,если что не так,поправьте.
Код:
struct  spisok
{
AnsiString pasport,FIO,tel;
};
spisok p,f,t;
p.pasport = "ФВ 215454";
f.FIO = "Анатолий Кашпировский";
t.tel = "+7-495-2454545";

Label2->Caption = p.pasport + "   " + f.FIO +  "   " +t.tel;
Только, не могу понять вообще,какой смысл в струтктурах,можно и так объявить переменные?

Последний раз редактировалось prikolist; 15.04.2009 в 19:12.
prikolist вне форума
Старый 15.04.2009, 19:21   #9
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

А так видите смысл?
Код:
struct  spisok
{
AnsiString pasport,FIO,tel;
};
spisok p;
p.pasport = "ФВ 215454";
p.FIO = "Анатолий Кашпировский";
p.tel = "+7-495-2454545";

Label2->Caption = p.pasport + "   " + p.FIO +  "   " +p.tel;
А если нужен массив этих самых "spisok"? А если нужно в функцию параметром передать?
pu4koff вне форума
Старый 15.04.2009, 19:41   #10
prikolist
Форумчанин
 
Аватар для prikolist
 
Регистрация: 18.06.2008
Сообщений: 350
По умолчанию

Можно же и без структуры обойтись, просто мне кажется,что её использование не имеет смысла.
prikolist вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Для чего код в классе ? Evgenijj Общие вопросы C/C++ 3 09.03.2009 14:12
Для чего придумали TDataSource (Access)? JY_ БД в Delphi 1 28.10.2008 14:28
Для чего нужен мобильник? Altera Свободное общение 53 19.08.2008 21:12
Использование typedef с vector <type> kezman Общие вопросы C/C++ 2 19.07.2008 21:17
Для чего вы программируете? Elefanter Свободное общение 14 17.02.2008 21:54