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

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

Войти
Регистрация
Восстановить пароль
 
Sasha
4865 / 2339 / 235
Регистрация: 05.06.2008
Сообщений: 7,354
Записей в блоге: 3
#1

Поясните разницу - C++

25.12.2009, 13:13. Просмотров 390. Ответов 5
Метки нет (Все метки)

Добрый день уважаемые товарищи программисты.
Читаю книгу по С++ в надежде изучить его на начальных этапах и нашёл пункт, где описываются операторы инкрименирования. Из этого пункта я узнал, что бывают постинкрементные и прединкрементные операторы.

C++
1
2
3
int x =10;
x++;
++x;
Так вот к чему я веду, объясните разницу между 10+1 и 1+10, ведь оно одно и тоже не ужели есть какая-то между ними разница может можно обойтись и одним оператором? Или я чего-то не понимаю.

Подскажите в чём между ними разница
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.12.2009, 13:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поясните разницу (C++):

Поясните новичку! - C++
Задано 6-значное число. Определить, кратно ли это число 9, используя признак делимости на 9 (число делится на 9, если сумма его цифр...

Поясните по указателям - C++
Добрый день товарищи. У меня вопрос: #include <iostream> using namespace std; int main() {

Поясните алгоритм! - C++
Задано натуральное число N. Вывести на экран все пары натуральных чисел A>10, B>A таких, что значение произведения A*B<N не изменится, если...

Поясните по шаблонам - C++
Читаю Солтера, а именно шаблоны. Наткнулся на "некоторые компиляторы требуют что бы определения шаблонных методов помещались в...

Поясните код - C++
// ourfunc.cpp — определение собственной функции #include <iostream> void simon(int); // прототип функции simon() int main() { ...

поясните действия - C++
for(int i=1; i<x; i++) if(i%2==0) y+=mas; else y-=mas; собственно что обозначает y+= и y-=mas s=&mas; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
rangerx
1933 / 1542 / 141
Регистрация: 31.05.2009
Сообщений: 2,912
25.12.2009, 14:11 #2
C++
1
2
3
4
5
int x = 10;
int y = x++; // здесь y станет равен x ДО того, как x станет равен 11
//...
int x = 10;
int y = ++x; // здесь y станет равен x ПОСЛЕ того, как x станет равен 11
Sasha
4865 / 2339 / 235
Регистрация: 05.06.2008
Сообщений: 7,354
Записей в блоге: 3
25.12.2009, 15:12  [ТС] #3
Чтобы не плодить новую тему хочу задать вопрос по одному примеру который я ввёл для просмотра из книги

C++
1
 
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
[FONT=monospace]//--------------------------------------------------------------------------- 
#include <vcl.h> 
#include <iostream.h>
#include <conio.h>
#pragma hdrstop 
int multiply(int,int) 
void showResult(int) //--------------------------------------------------------------------------- 
#pragma argsused 
int main(int argc, char* argv[]) 
{ int x,y,result; 
  cout << endl << "Enter the first value: "; 
  cin >> x; cout << endl << "Enter the first value: "; 
  cin >> y; 
  result = multiply(x,y); 
  showResult(result); 
  cout << endl << endl << "Press any key to continue..."; 
  getch(); 
  return 0; 
} 
 int multiply (int x, int y) 
{ 
  return x*y; 
} 
void showResult(int res) 
{ 
 cout << "The result is: " << result << endl; 
 
 //--------------------------------------------------------------------------- [/FONT]
[FONT=monospace]}
[/FONT]


Почему-то компилятор выдаёт ошибку Declaration syntax error в этой строке в начале, где объявляю функцию void showResult(int)
Что не так?
easybudda
Модератор
Эксперт CЭксперт С++
9530 / 5523 / 932
Регистрация: 25.07.2009
Сообщений: 10,608
25.12.2009, 16:03 #4
Цитата Сообщение от Sasha Посмотреть сообщение
Почему-то компилятор выдаёт ошибку Declaration syntax error
Цитата Сообщение от Sasha Посмотреть сообщение
int multiply(int,int)
void showResult(int)
Точку с запятой пропустил. Вот так надо:
C++
1
2
int multiply(int,int);
void showResult(int);
Sasha
4865 / 2339 / 235
Регистрация: 05.06.2008
Сообщений: 7,354
Записей в блоге: 3
25.12.2009, 16:28  [ТС] #5
Cпасибо, странно в книге без точки с запятой наверно опечатка там
easybudda
Модератор
Эксперт CЭксперт С++
9530 / 5523 / 932
Регистрация: 25.07.2009
Сообщений: 10,608
25.12.2009, 16:33 #6
Цитата Сообщение от Sasha Посмотреть сообщение
Cпасибо, странно в книге без точки с запятой наверно опечатка там
Бывает... В общем случае если функция только объявляется, а определяется потом, то точка с запятой нужна:
C
1
2
3
4
5
6
7
8
9
10
int mul(int, int);
...
int main(){
...
}
/*тут уже без ; */
int mul(int a, int b){
    return a * b;
}
...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.12.2009, 16:33
Привет! Вот еще темы с ответами:

Поясните, пожалуйста. - C++
Что означает &quot;%d&quot; Arr и sizeof в си?

Поясните считывание - C++
/*Считывание первой матрицы*/ //создание матрицы float**firstMatrix = new float*; //считывание матрицы const char separator...

Поясните задание - C++
Разработать программу учета &quot;указаний сверху&quot; (учет новых указаний и удаление выполненных). Данные представить в виде линейного...

поясните по #define - C++
У меня есть super class Animals и два подкласса Cats и Birds крайне похожие в реализации. Так вот хочу сделать так: в файле &quot;Birds.h&quot;...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
25.12.2009, 16:33
Ответ Создать тему
Опции темы

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