Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
-16 / 14 / 3
Регистрация: 22.01.2013
Сообщений: 154

Пустой оператор "int a;"?

31.10.2015, 20:13. Показов 5191. Ответов 77
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Для while(); пустой оператор очевиден. Для int a; - это тоже пустой оператор для функции вызываемой с хедера или это чистая орфография языка .
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.10.2015, 20:13
Ответы с готовыми решениями:

Как заполнить один int пустой массив другим int массивом ?
Можно пример кода :)

Пустой оператор
Интересно, а пустой оператор требует какого-либо времени на свое выполнение или же он просто ставится в качестве проформы, когда синтаксис...

Найти пустой оператор
Найти.

77
-16 / 14 / 3
Регистрация: 22.01.2013
Сообщений: 154
01.11.2015, 20:22  [ТС]
Студворк — интернет-сервис помощи студентам
int a вставил админ или модератор. Моя тема была:"Пустой оператор".

Добавлено через 11 минут
Цитата Сообщение от gru74ik Посмотреть сообщение
Нет. Операторы - это операторы. Функции - это функции. Это разные абстракции.
Да, согласен. Это абстракции на уровне пользователя( меня это удовлетворяет полностью). Но хочется больше информации, непосредственно с Форума, а не из Сети.
0
Неэпический
 Аватар для Croessmah
18150 / 10732 / 2067
Регистрация: 27.09.2012
Сообщений: 27,047
Записей в блоге: 1
01.11.2015, 20:25
Цитата Сообщение от gavrasio Посмотреть сообщение
непосредственно с Форума, а не из Сети.
а форум где?
Цитата Сообщение от gavrasio Посмотреть сообщение
Но хочется больше информации
какой? Будет нормальный вопрос, будет нормальный ответ.
А так черенок вот пустой работает не так потому что в гараже турист песни поет ночью в двенадцать дня.
2
-16 / 14 / 3
Регистрация: 22.01.2013
Сообщений: 154
01.11.2015, 20:37  [ТС]
Цитата Сообщение от Croessmah Посмотреть сообщение
в while может быть только ОДИН(ОДНА???) statement.
; - это declaration statement, в данном случае empty-declaration.
{} - это compound statement, который нужен, чтобы несколько sttement'ов считались как один.
Например:
C++
1
2
3
while (x)
    int x ;//statement для while. Здесь ведь может быть и ; и другой statement
    int y ;//а это уже вне while.
Вот для таких случаев и нужен compound statement:
C++
1
2
3
4
5
while (x)
{//тот самый compound statement
    int x ;//statement внутри compound
    int y ;//statement внутри compound
}
Всё правильно. А по теме - где пустой оператор, - не вижу.
0
Неэпический
 Аватар для Croessmah
18150 / 10732 / 2067
Регистрация: 27.09.2012
Сообщений: 27,047
Записей в блоге: 1
01.11.2015, 20:38
Цитата Сообщение от gavrasio Посмотреть сообщение
А по теме - где пустой оператор, - не вижу.
Читать внимательнее
Цитата Сообщение от gavrasio Посмотреть сообщение
empty-declaration.
Нет тут никакого пустого оператора. Такого оператора вообще нет!!!
1
-16 / 14 / 3
Регистрация: 22.01.2013
Сообщений: 154
01.11.2015, 20:52  [ТС]
Цитата Сообщение от gavrasio Посмотреть сообщение
; - это declaration statement, в данном случае empty-declaration.
Вы хотите сказать, что данное выражение имеет разную интерпритацию?

Добавлено через 6 минут
Цитата Сообщение от Croessmah Посмотреть сообщение
Нет тут никакого пустого оператора. Такого оператора вообще нет!!!
Когда Вы ставите его, чтобы сделать бесконечный цикл он есть:
while( ); Иначе эта функция не поймёт, что же ей делать.
0
Неэпический
 Аватар для Croessmah
18150 / 10732 / 2067
Регистрация: 27.09.2012
Сообщений: 27,047
Записей в блоге: 1
01.11.2015, 20:55
Цитата Сообщение от gavrasio Посмотреть сообщение
Вы хотите сказать, что данное выражение имеет разную интерпритацию?
см. пост Пустой оператор "int a;"?
C++
1
2
int a ; //Это simple-declaration, как видите на скриншоте, оно заканчивается символом ;
while (x) ; //Здесь ; - это empty-declaration, оно не имеет никакого эффекта
Добавлено через 1 минуту
Цитата Сообщение от gavrasio Посмотреть сообщение
Когда Вы ставите его, чтобы сделать бесконечный цикл он есть
Вы читаете что Вам пишут? Верно сказали - почитайте учебник.

P.S. объяснять что-то бестолку, походу.
0
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9676 / 4827 / 764
Регистрация: 17.04.2012
Сообщений: 9,670
Записей в блоге: 14
01.11.2015, 20:57
Цитата Сообщение от gavrasio Посмотреть сообщение
int a вставил админ или модератор. Моя тема была:"Пустой оператор".
Темам нужно давать более исчерпывающие названия. И "int a" у вас в стартовом посте указано.
Так что хватит на зеркало пенять.
А вот это вдогонку
6.5. Запрещено публично обсуждать действия администрации форума, касающиеся их прямых обязанностей.
0
-16 / 14 / 3
Регистрация: 22.01.2013
Сообщений: 154
01.11.2015, 21:25  [ТС]
Цитата Сообщение от Croessmah Посмотреть сообщение
Нет тут никакого пустого оператора. Такого оператора вообще нет!!!
Когда Вы ставите его, чтобы сделать бесконечный цикл он есть:
while( ); Иначе эта функция не поймёт, что же ей делать.
Поставить надо единицу: while(1). В некоторых компиляторах while(true).
0
Неэпический
 Аватар для Croessmah
18150 / 10732 / 2067
Регистрация: 27.09.2012
Сообщений: 27,047
Записей в блоге: 1
01.11.2015, 21:27
Ясн всё. Читать книги! Спасибо за внимание.
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
01.11.2015, 21:29
Цитата Сообщение от gavrasio Посмотреть сообщение
Если бы я книжки не читал, - не было бы меня здесь.
Может книги не те, может понял не так.
Цитата Сообщение от gavrasio Посмотреть сообщение
Я запустил тему о пустом операторе( без всяких int a)
Я могу допустить, что модераторы поправили название темы, но то что фразы твои никто не менял, сомнений у меня не вызывает.
Цитата Сообщение от gavrasio Посмотреть сообщение
Достаёт из хедера функцию int, обрабатывает её, и ставит пустой оператор.
Это предложение однозначно говорит о том, что ты совсем ничего не понимаешь в языке C++, или просто не можешь выразить свои мысли на русском языке, используя термины предметной области.

Твои знания разрозненны (проще говоря, "каша" в голове), и их надо систематизировать.
Но пока ты не сможешь задавать нормально вопросы, ответов, которые тебя устроят, ты тоже не получишь.
Поэтому, бери учебник, читай, вникай, и уже после получения базовых навыков задавай вопросы, если они не отпадут сами собой после изучения основ.
1
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
01.11.2015, 21:29
Цитата Сообщение от gavrasio Посмотреть сообщение
Иначе эта функция не поймёт, что же ей делать.
Какая функция?
0
-16 / 14 / 3
Регистрация: 22.01.2013
Сообщений: 154
01.11.2015, 21:31  [ТС]
Цитата Сообщение от Croessmah Посмотреть сообщение
C++
1
2
int a ; //Это simple-declaration, как видите на скриншоте, оно заканчивается символом ;
while (x) ; //Здесь ; - это empty-declaration, оно не имеет никакого эффекта
Если Ваш х равняется ЕДИНИЦЕ то ";" здесь при делах, - проверте любым компилятором.
0
Неэпический
 Аватар для Croessmah
18150 / 10732 / 2067
Регистрация: 27.09.2012
Сообщений: 27,047
Записей в блоге: 1
01.11.2015, 21:32
Цитата Сообщение от gavrasio Посмотреть сообщение
Если Ваш х равняется ЕДИНИЦЕ то ";" здесь при делах, - проверте любым компилятором.
а если двум? Еще раз - читайте книжки. Вы несете чушь, право
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
01.11.2015, 21:34
gavrasio, у тебя есть дома градусник? Проверь температуру. Хоть я и не доктор, но мне кажется у тебя бред.
3
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
01.11.2015, 22:22
gavrasio, про точку с запятой у Стивена Праты:
в оригинале:
Цитата Сообщение от Stephen Prata
In C++ each complete instruction is called a statement. You must
terminate each statement with a semicolon,so don’t omit the semicolons when you type the
examples. <...>
A statement represents an action to be taken. To understand your source code, a compiler
needs to know when one statement ends and another begins. Some languages use a state-
ment separator. FORTRAN, for example, uses the end of the line to separate one statement
from the next. Pascal uses a semicolon to separate one statement from the next. In Pascal
you can omit the semicolon in certain cases, such as after a statement just before an END ,
when you aren’t actually separating two statements. (Pragmatists and minimalists will dis-
agree about whether can implies should.) But C++, like C, uses a semicolon as a terminator
rather than as a separator. The difference is that a semicolon acting as a terminator is part
of the statement rather than a marker between statements. The practical upshot is that in
C++ you should never omit the semicolon.
в переводе:
Цитата Сообщение от Стивен Прата
В языке C++ каждая полная инструкция называется оператором.
Каждый оператор должен завершаться точкой с запятой, поэтому не забывайте ставить ее при
наборе примеров. <...>
Оператор представляет действие, которое должно быть выполнено. Чтобы понять ваш
исходный код, компилятор должен знать, где заканчивается один оператор и начинается другой.
В некоторых языках программирования используется разделитель между операторами.
В языке FORTRAN, например, для разделения операторов друг от друга применяется
символ конца строки. В языке Pascal для разделения операторов используется точка с
запятой. В языке Pascal точку с запятой можно в некоторых случаях опускать, например, после
оператора и перед end, когда на самом деле разделение двух операторов не происходит.
(Прагматики и минималисты могут не согласиться с тем, что можно — это значит нужно.)
Однако в языке C++, в отличие от С, точка с запятой больше используется в качестве
терминатора, или признака завершения, а не как разделительный знак. Разница заключается в том,
что точка с запятой, действующая как терминатор, является частью оператора, а не
маркером между операторами. На практике в языке C++ точку с запятой никогда нельзя опускать.
0
01.11.2015, 22:27
 Комментарий модератора 
Уважаемые форумчане, давайте не будем переходить на личности.
gavrasio, вам персональное предупреждение.
0
-16 / 14 / 3
Регистрация: 22.01.2013
Сообщений: 154
01.11.2015, 22:51  [ТС]
Цитата Сообщение от gru74ik Посмотреть сообщение
На практике в языке C++ точку с запятой никогда нельзя опускать.
while() {} опускаю ";". Ну и что? А вот так while{;} проходит. Вот об этом я и говорил. ";" - это не просто синтаксис, а оператор, который прописан в хедерах(?)
0
Неэпический
 Аватар для Croessmah
18150 / 10732 / 2067
Регистрация: 27.09.2012
Сообщений: 27,047
Записей в блоге: 1
01.11.2015, 23:10
Цитата Сообщение от gavrasio Посмотреть сообщение
Вот об этом я и говорил. ";" - это не просто синтаксис, а оператор, который прописан в хедерах(?)
Чушь Вы несете.
gru74ik, беда переводов в том, что там expression, statement и operator сливаются в одну большую кашу, которая бурлит и в результате ни фига не понятно. Операторы могут не заканчиваться ';'. как пример
C++
1
y = x + y + z ;
Как видим, после оператора + (вместе с операндами), стоит другой знак. а не ';', иначе это бы выглядело как
C++
1
y = ; x + y ; + z ; ;
Добавлено через 1 минуту
Цитата Сообщение от gavrasio Посмотреть сообщение
while() {} опускаю ";"
Вы ничего не опускаете. Вы просто поменяли один statement на другой.

Добавлено через 1 минуту
Есть такое понятие, как null statement - это expression-statement с отсутствующим выражением. Но это же НЕ ОПЕРАТОР.
0
-16 / 14 / 3
Регистрация: 22.01.2013
Сообщений: 154
01.11.2015, 23:11  [ТС]
Цитата Сообщение от Croessmah Посмотреть сообщение
Здесь ; - это empty-declaration, оно не имеет никакого эффекта
А что имеет значение(эффект)?
0
Неэпический
 Аватар для Croessmah
18150 / 10732 / 2067
Регистрация: 27.09.2012
Сообщений: 27,047
Записей в блоге: 1
01.11.2015, 23:14
и в
C++
1
while(...) ; //это как раз null-statement (не empty-declaration, ранее я слегка попутал), а не "пустой" оператор
Добавлено через 2 минуты
Цитата Сообщение от gavrasio Посмотреть сообщение
А что имеет значение(эффект)?
мде...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.11.2015, 23:14

Какая из этих функций int Q(int w) int W(int y,int u,int i) сработает быстрее?
Если есть 2 функции(простые или перегруженные) к примеру Q(int w) int W(int y,int u,int i)или int Funkz(int a) int Funkz(int a, int b, int...

Пустой оператор есть во всех функциях и методах классов: кто против?
while{1} ;

Не работает перегрузка индексного оператора [], вместо [int][int] почему то нужно ставить [0][int][int]
#include&lt;iostream&gt; #include&lt;string&gt; #include&lt;vector&gt; #include&lt;algorithm&gt; #include&lt;ctime&gt; #include&lt;conio.h&gt; #include&lt;windows.h&gt; ...

Правый оператор имеет тип int
Показывает ошибку 1&gt;c:\users\егор\documents\visual studio 2008\projects\igor\igor\mainf.cpp(53) : error C2297: *: недопустимо, правый...

Как перегрузить оператор [] для map<string, int>?
map&lt;string, int&gt; m; map&lt;string, int&gt;::iterator at, begin, end; string msg; cout &lt;&lt; &quot;Enter the stroke: &quot;; cin &gt;&gt; msg; ...


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

Или воспользуйтесь поиском по форуму:
40
Закрытая тема Создать тему
Новые блоги и статьи
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе. Самым главным критерием для меня было создание паролей, в котором отсутствуют знаки: | 1 l I Обработка содержит следующие. . .
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store. И так: 1. Скачиваем с. . .
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге). Задача: Программно добавить префикс в нумерацию документов. Решение: В модуле объекта. . .
После закрытия оутлука продолжает висеть процесс в диспетчере задач
Maks 27.10.2026
С недавнего времени в продакшене возникла проблема: при закрытии оутлука в диспетчере задач продолжал висеть процесс outlook. exe. Проблема возникла после установки MS Office 2021 LTSC на машинах, под. . .
Baragoz - DPS/HPS бот для WoW 3.3.5a, многоязычный
AmbA 26.10.2026
Хотите ещё ботов? У меня есть один! А я пока отдохну от него. https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=12062&stc=1&d=1793007952 Инструкция внутри. https:/ / youtu. be/ VpfFZSUDGnQ. . .
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности. Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru