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

Сформулируйте, что такое разделитель операторов и где он ставится - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.62
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
05.07.2013, 08:59     Сформулируйте, что такое разделитель операторов и где он ставится #1
Я интуитивно понимаю, в своих программах всегда ставлю, где надо, но словами написать не могу. А нужен полностью формализованный абзац, где и зачем ставится точка с запятой.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.07.2013, 08:59     Сформулируйте, что такое разделитель операторов и где он ставится
Посмотрите здесь:

Где найти Двунаправленное кольцо? у кого есть такое? или есть ссылки где их можно найти? C++
Где в программе перегрузка операторов? C++
Что такое перегрузка оператора? Что у меня в коде за ошибка? C++
Не секу что такое gsoap и где его искать на win7 C++
C++ Где найти список всех операторов С++ с описанием их семантики?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
05.07.2013, 10:00     Сформулируйте, что такое разделитель операторов и где он ставится #2
Где: между (Паскаль) или в конце (Си) каждого утверждения.
Зачем: потому что синтаксис языка не позволяет парсеру разделить операторы самостоятельно без явной подсказки.
AntonChik
1083 / 581 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
05.07.2013, 10:41     Сформулируйте, что такое разделитель операторов и где он ставится #3
OhMyGodSoLong, это не "полностью формализованный абзац")
например, почему здесь
C++
1
2
3
for(int i=0;i<1;i++)
{
}
непосредственно в конце утверждения i++ нет точки с запятой? понятно, потому что скобка... но про скобки вы ничего не сказали)
svk2140
-8 / 0 / 1
Регистрация: 04.07.2013
Сообщений: 254
05.07.2013, 11:07     Сформулируйте, что такое разделитель операторов и где он ставится #4
слушайте ну вы чё совсем уже! почему вы всегда всё так сложно делаете! неужели нельзя объяснить для начинающего. точка с запятой показывает что эта строчка не распространяется на остальные. в твоём коде функция для пересчета (for) распространяется на блок, и поэтому там нельзя ставить точку с запятой, потому что тогда блок останется без функции для пересчета
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
05.07.2013, 11:16  [ТС]     Сформулируйте, что такое разделитель операторов и где он ставится #5
А что такое утверждение?
AntonChik
1083 / 581 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
05.07.2013, 11:17     Сформулируйте, что такое разделитель операторов и где он ставится #6
svk2140, да что вы говорите?) я ж специально написал "непосредственно в конце утверждения i++"
C++
1
for(int i=0;i<1;i++;)
т.е. после утверждений i=0 и i<1 ставят точку с зпт, а после i++ нет.


Цитата Сообщение от svk2140 Посмотреть сообщение
точка с запятой показывает что эта строчка не распространяется на остальные
да что вы говорите?)
C++
1
2
int a
=123; // т.е. эта строчка не распространяется на предыдущую,да?)
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
05.07.2013, 11:18  [ТС]     Сформулируйте, что такое разделитель операторов и где он ставится #7
Цитата Сообщение от svk2140 Посмотреть сообщение
в твоём коде функция для пересчета (for)
Там нет ни каких функция пересчёта.
AntonChik
1083 / 581 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
05.07.2013, 11:19     Сформулируйте, что такое разделитель операторов и где он ставится #8
в общем надо искать какой-то официальный источник...
svk2140
-8 / 0 / 1
Регистрация: 04.07.2013
Сообщений: 254
05.07.2013, 11:24     Сформулируйте, что такое разделитель операторов и где он ставится #9
не ну слушай я говорил про for(int i=0;i<1;i++) это если ты ещё не понял функция для пересчёта.
потом я говорил что если поставить точку с зяпятой. я имел ввиду
C++
1
2
3
for(int i=0;i<1;i++);
{
}
в конце (в скобках) не ставиться точка с запятой потому что.... тогда бы постоянно выполнялось int i = 0 и она (переменная) ровнялась бы всегда 0

ну теперь та хоть понял?
AntonChik
05.07.2013, 11:26
  #10

Не по теме:

я извиняюсь за сравнение, но похоже на то как цыпленок учит курицу
я даже сохраню себе эту страничку)

svk2140
-8 / 0 / 1
Регистрация: 04.07.2013
Сообщений: 254
05.07.2013, 11:30     Сформулируйте, что такое разделитель операторов и где он ставится #11
+ пример какой то... к примеру такой
C++
1
2
if(a == 1);
cout << "a = 1" << endl;
не будет компилироваться потому что ifif(a == 1) распространяетсятолько на самого себя
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
05.07.2013, 11:31  [ТС]     Сформулируйте, что такое разделитель операторов и где он ставится #12
Цитата Сообщение от svk2140 Посмотреть сообщение
лушай я говорил про for(int i=0;i<1;i++) это если ты ещё не понял функция для пересчёта.
Всякая функция имеет тип и список параметров, а на c++ не может находиться внутри другой функции, или перегруженного оператора, а её имя не может быть зарезервировано.
C++
1
for(int i=0;i<1;i++)
может быть только внутри функции, или перегруженного оператора и не имеет ни типа, ни списка параметров, а слово for зарезервировано.

Добавлено через 40 секунд
Цитата Сообщение от svk2140 Посмотреть сообщение
в конце (в скобках) не ставиться точка с запятой потому что.... тогда бы постоянно выполнялось int i = 0 и она (переменная) ровнялась бы всегда 0
Бредятина.
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
05.07.2013, 11:32     Сформулируйте, что такое разделитель операторов и где он ставится #13
svk2140, оно скомпилируется и отработает нормально
Цитата Сообщение от svk2140 Посмотреть сообщение
+ пример какой то... к примеру такой
C++
1
2
if(a == 1);
cout << "a = 1" << endl;
не будет компилироваться потому что ifif(a == 1) распространяетсятолько на самого себя
AntonChik
1083 / 581 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
05.07.2013, 11:33     Сформулируйте, что такое разделитель операторов и где он ставится #14
Цитата Сообщение от svk2140 Посмотреть сообщение
в конце (в скобках) не ставиться точка с запятой потому что.... тогда бы постоянно выполнялось int i = 0 и она (переменная) ровнялась бы всегда 0
не хочу вас огорчать, но во-первых, тут хоть ставь, хоть не ставь эту точку с зпт, она(переменная) все равно всегда будет равна нулю...
а во-вторых, эта точка с запятой в данном месте может ставиться очень даже целенаправленно, например:
C++
1
for(int i=0;i<1;a[i]=i++);
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
05.07.2013, 11:34  [ТС]     Сформулируйте, что такое разделитель операторов и где он ставится #15
Цитата Сообщение от svk2140 Посмотреть сообщение
не будет
будет. Если a = 1, то выполнить пустой оператор и в любом случае вывести в count "a=1" и перевести строку манипулятором endl. Что здесь не компильрабельного?
AntonChik
1083 / 581 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
05.07.2013, 11:34     Сформулируйте, что такое разделитель операторов и где он ставится #16
Цитата Сообщение от svk2140 Посмотреть сообщение
не будет компилироваться
будет еще как)
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
05.07.2013, 11:35  [ТС]     Сформулируйте, что такое разделитель операторов и где он ставится #17
Цитата Сообщение от AntonChik Посмотреть сообщение
не хочу вас огорчать, но во-первых, тут хоть ставь, хоть не ставь эту точку с зпт, она(переменная) все равно всегда будет равна нулю...
Не смотря на инкремент?
svk2140
-8 / 0 / 1
Регистрация: 04.07.2013
Сообщений: 254
05.07.2013, 11:38     Сформулируйте, что такое разделитель операторов и где он ставится #18
ну блин такого шквала я не ожидал) я имел ввиду - что не будет условие выполнятся. думаю вы слишком прямо восприняли. да и насчёт функции для пересчёта - вы видимо так и не поняли что именно так чайнику будет легче +
for(int i = 0;i < 2;i++; ) в конце будет i = 0 а здесь for(int i = 0;i < 2;i++) оно будет 2
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
05.07.2013, 11:41  [ТС]     Сформулируйте, что такое разделитель операторов и где он ставится #19
И оставьте вы в покое циклы с альтернативами.
C++
1
a=2; b=c=d=e; f=c+44*355-e; z=(ds+dsfdsfa-er4*fdsa)*fgds+25/dfsa; v=4;
Расскажите, почему точка с запятой стоит именно на этих местах, а не на других и именно в таком количестве. Но при этом не используя это строчку ни целиком, ни по частям.

Добавлено через 2 минуты
Цитата Сообщение от svk2140 Посмотреть сообщение
да и насчёт функции для пересчёта вы видимо так и не поняли что именно так чайнику будет легче +
Легче чайнику - не значит правильно, простая для понимания, но кривая фраза в учебнике, или из уст лектора пудрит мозги, а в дальнейшем мешает.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.07.2013, 11:43     Сформулируйте, что такое разделитель операторов и где он ставится
Еще ссылки по теме:

В этой части кода происходит объявление функций? Что такое void? Что в скобках? C++
C++ Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа?
Составить программу, где с помощью операторов / и % вычислить возраст человека C++

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

Или воспользуйтесь поиском по форуму:
AntonChik
1083 / 581 / 21
Регистрация: 11.11.2008
Сообщений: 1,544
05.07.2013, 11:43     Сформулируйте, что такое разделитель операторов и где он ставится #20
Цитата Сообщение от taras atavin Посмотреть сообщение
Не смотря на инкремент?
в рамках оператора да, а что будет потом это уже другая история.
т.е. эту остаточную единичку в теле цикла мы все равно не сможем использовать
Yandex
Объявления
05.07.2013, 11:43     Сформулируйте, что такое разделитель операторов и где он ставится
Ответ Создать тему
Опции темы

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