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

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

Войти
Регистрация
Восстановить пароль
 
fs444
6 / 10 / 0
Регистрация: 18.08.2009
Сообщений: 480
#1

Вопрос по return - C++

11.03.2010, 20:16. Просмотров 400. Ответов 6
Метки нет (Все метки)

Написал код:
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
31
32
33
#include<iostream>
using namespace std;
 
#include<windows>
 
int Func1(int arg1); //функция, прибавляющая к заданному числу цифру "5", без return
int Func2(int arg2); //аналогично, но без return
 
int main()
{
   Func1(1);
   cout << endl;
   Func1(1);
   cout << endl;
 
   system("pause");
   return 0;
}
 
int Func1(int arg1)
{
   int newArg1;
   newArg1 = arg1 + 5;
   cout << newArg1;
   return newArg1;
}
 
int Func2(int arg2)
{
   int newArg2;
   newArg2 = arg2 + 5;
   cout << newArg2;
}
Вопрос: что меняет в Func1 строка «return newArg1;»? Ведь вывод-то у них одинаковый получается?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2010, 20:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вопрос по return (C++):

В чем разница между return и return false/true - C++
Привет всем. Вот подскажите плиз) return; return false; return true; расскажите пожалуйста об етих операторах.. чем они...

Как сделать так, что если файл существует return true, если нет - return false - C++
Здравствуйте, я новичок в программировании. Мой вопрос очень прост: как сделать так, что если файл существует return true если нет return...

Return - C++
Подскажите пожалуйста, каким образом return ом из функции возвращать 2 значения, напрмер 2 корня квардатного уравнения, найденных в одной...

return - C++
Здравствуйте, форумчане! На сколько мне известно оператор return передаёт управление операционной системе. А можно ли с его помощью...

return *this; - C++
return *this; Возвращает само себя?

return (n<0) ? -n:n; - C++
Что это означает, return (n&lt;0) ? -n:n; не как не могу понять? Может быть это как if (n&lt;0) return true; else false; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
11.03.2010, 20:21 #2
C++
1
2
3
4
5
6
int Func2(int arg2)
{
   int newArg2;
   newArg2 = arg2 + 5;
   cout << newArg2;
}
тут ошибка функция должна возвр значение.

C
1
2
3
4
5
6
7
int Func1(int arg1)
{
   int newArg1;
   newArg1 = arg1 + 5;
   cout << newArg1;
   return newArg1;
}
cout<<newArg1; вывод на экран.
след строка возвращаяет значение newArg1.
если написать так cout<<Func1(1);
то на экран выведет 1.
Genius Ignat
1236 / 774 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
11.03.2010, 20:24 #3
что то про указатель мысль пришла, извиняюсь сделал правку.
fs444
6 / 10 / 0
Регистрация: 18.08.2009
Сообщений: 480
15.03.2010, 22:59  [ТС] #4
C++
1
2
3
4
5
6
7
int Func1(int arg1)
{
   int newArg1;
   newArg1 = arg1 + 5;
   cout << newArg1;
   return newArg1;
}
если написать так cout<<Func1(1);
то на экран выведет 1.
А почему 1? У меня все равно 6 выводит.
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.03.2010, 05:00 #5
Цитата Сообщение от fs444
Вопрос: что меняет в Func1 строка «return newArg1;»?
так как функция возвращает значение int типа, нужно делать return значение_int_типа;

смысл возвращаемого значения

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    int sum;
    int prod;
    int result;
 
    sum = add(2, 3);
    prod = mul(2, 3);
    
    result = sum + prod;
 
...
 
int add(int a, int b)
{
    return a+b;
}
 
int mul(int a, int b)
{
    return a*b;
}
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
16.03.2010, 05:10 #6
Цитата Сообщение от Sekt Посмотреть сообщение
то на экран выведет 1.
дважды. И не 1, а 6. Один раз функция выполнит
Цитата Сообщение от fs444 Посмотреть сообщение
C++
1
cout << newArg1;
, потом
C++
1
return
запихает
C++
1
newArg1
в некий
C++
1
temp
и
Цитата Сообщение от Sekt Посмотреть сообщение
C++
1
cout<<Func1(1);
выполнится как
C++
1
cout<<temp;
.
^Tecktonik_KiLLeR
1159 / 441 / 22
Регистрация: 23.06.2009
Сообщений: 6,235
Завершенные тесты: 1
16.03.2010, 11:33 #7
Цитата Сообщение от fs444 Посмотреть сообщение
int Func1(int arg1) { int newArg1; newArg1 = arg1 + 5; cout << newArg1; return newArg1; }
юзер вводит данные. Например 5,функция возвращает данные+5,если вы ввели 5 то возвратит 10

Добавлено через 33 секунды
Цитата Сообщение от fs444 Посмотреть сообщение
А почему 1? У меня все равно 6 выводит.
правильно,написано же +5
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.03.2010, 11:33
Привет! Вот еще темы с ответами:

Return - C++
Всем доброго времени суток! У меня возникла проблема с возвратом значения массива double *c, у меня берётся только одно последнее значение...

return - C++
Вот такой вопрос, как вернуть значения из функции, и чтоб функция main это узнала? если на примере, то во так, допучтим есть функция...

с++ while return - C++
Задание:Вводится точность e. Вычислить сумму ряда 1-1/3+1/5-1/7.... сумма Вычисления продолжать до тех пор, пока очередное слагаемое не...

Матрицы return - C++
Немного украл кусок кода и появились небольшие проблемы. int&amp; cMatrix::operator(int * index) { int error=-1; if ( *index &lt; 0 ||...


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

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

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