Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 301, средняя оценка - 4.85
Залим
10 / 10 / 0
Регистрация: 25.02.2009
Сообщений: 71
#1

что такое Void - C++

02.03.2009, 10:41. Просмотров 43212. Ответов 5
Метки нет (Все метки)

Всем привет кто подскажет что такое Void.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.03.2009, 10:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос что такое Void (C++):

Что такое void** ? - C++
Никак не могу понять Что такое void** или int** это указатель на указатель? Зачем это надо? спасибо, если кто объяснит

Что такое void? - C++
С++ 1).Что такое void ? 2).Что ткое void swap ? 3).Что такое temp ? 4).Что ткое fot ? заранее спс

В этой части кода происходит объявление функций? Что такое void? Что в скобках? - C++
В этой части кода происходит объявление функций? Что такое void? Что в скобках? void get(float **mas, int N, int M); void...

что такое void *data - C++
Помогите разорбаться,что такое void *data в С++ и что она делает

Не могу понять, что такое void? - C++
Господа, подскажите пожалуйста глупому, что значит void? Например: void function1(void); Что делает первый и второй void? Заранее...

Что это такое int (*func4 (void)(int) - C++
Это примеры указателей на функцию. Понятно.void (*func1) (void *, int *); void (*func2) (int, int *); void (*func3) (void); А это что...

5
Lord_Voodoo
Супер-модератор
8594 / 2210 / 61
Регистрация: 07.03.2007
Сообщений: 10,970
Завершенные тесты: 1
02.03.2009, 10:54 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
voidтип, спецификатор типа и ключевое слово в языках программирования Си, Си++, Java, C# и D, заимствованное у их общего предшественника Алгола 68.
История
Среди современных языков программирования ключевое слово void впервые появилось в Си++ для поддержки концепции обобщенных указателей. Тем не менее, благодаря скорому заимствованию у Си++, первым нормативным документом, содержащим это ключевое слово стал стандарт языка Си, опубликованный ANSI в 1989г. В рамках языка Си++ void был стандартизован в 1998г.
Впоследствии ключевое слово void и связанные с ним языковые конструкции были унаследованы языками Java и C#, D.
Синтаксис
Синтаксически, void является одним из спецификаторов типа, входящих в более общую группу спецификаторов объявления.
Семантика
Семантика ключевого слова void не подчиняется общей семантике спецификаторов типа и зависит от способа употребления:
  • В качестве имени типа значения, возвращаемого функцией: указывает на то, что функция не возвращает значения, а вызов такой функции является void-выражением. Тело такой функции не должно содержать операторов return с выражениями. Например:
    void f();
  • В составе декларатора функции: указывает на то, что функция имеет прототип и не имеет параметров. Например:
    int f(void);
  • В качестве имени целевого типа операции приведения: такое void-приведение означает отказ от значения приводимого выражения. Например:
    #define promote_ptr() ((void) (ptr++))
  • В составе имени типа void-указателя: такой указатель способен представлять значения любых указателей на объектные и неполные типы, т.е. адреса любых объектов. Таким образом, void-указатель является обобщенным объектным указателем. void-указатели не способны представлять значения указателей на функции. За исключением случая приведения константного null-указателя к указателю на функцию в Си, явных и неявных преобразований между void-указателями и указателями на функции нет.
Тип void определен как неполный тип, который не может быть дополнен. Как следствие, этот тип не должен быть использован там, где допускаются только полные типы, например, в качестве типа параметра в определении функции.
Язык Си до введения void
До публикации первого стандарта Си в 1989г., которая ввела в язык ключевое слово void общепринятой практикой было объявлять функции, не возвращающие значений без использования спецификаторов типов. Хотя семантически такой объявление было эквивалентно объявлению функции, возвращающей значение типа int, намеренно опущенные спецификаторы типа подчеркивали, что функция не возвращает никакого определенного значения. Например:
f(long l){ /* ... */}
Схожим образом, определения функций, не имеющие параметров записывались с пустыми круглыми скобками:
int main(){ /* ... */}
В качестве обобщенного указателя использовался указатель на char. Более того, современные стандарты требуют, чтобы представление и требования по выравниванию для void-указателей были теми же, что для указателей на char, что означает взаимозаменяемость этих типов.
Первый стандартный диалект Си (C89), хотя уже позволял записи с ключевым словом void, все же допускал такое использование неявного int в целях поддержки совместимости с существующим кодом. Современный диалект Си (C99) не допускает отстутсвия спецификаторов типов в именах типов и объявлениях.
8
Егорка47
7 / 6 / 1
Регистрация: 26.10.2010
Сообщений: 249
20.01.2011, 17:42 #3
а если войд передается как параметр функции,что это значит?

C++
1
int blabla(void);
0
asics
Freelance
Эксперт С++
2848 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
20.01.2011, 17:46 #4
Егорка47, Как не странно, это означает, что функция параметров не принимает.В С++ void в этом случае, писать не обязательно, в отличие от Си.
2
silent_1991
Эксперт С++
4986 / 3043 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
21.01.2011, 11:13 #5
asics, хм, никогда в сях не писал войд, всегда работало...
0
Егорка47
7 / 6 / 1
Регистрация: 26.10.2010
Сообщений: 249
21.01.2011, 14:05 #6
silent_1991,
2
Миниатюры
что такое Void  
21.01.2011, 14:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2011, 14:05
Привет! Вот еще темы с ответами:

Что такое symbol в выражении void (*symbol)(); - C++
typedef void (*symbol)(); void (*symbol)(); Если не ошибаюсь, в первом случае symbol это тип данных для указателя на функцию которая...

Тип void как возвращаемое значение функции: что он такое, зачем он нужен, где, когда и как его использовать? - C++
Объясните пожалуйста про Void для оооочень далекого человека. Читаю книгу Шилдта, в принципе всё ясно, всё понимаю и пробую, но вот Void -...

Что значит void(*f)()=(void(*)()func? - C++
void(*f)()=(void(*)())func; Объясните, пожалуйста, что значит этот код.

Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами? - C++
Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами?


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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