Другие языки программирования и технологии

Помогите с информатикой. Вопрос по С++: написание функций с помощью void

1)Хочу узнать, правильно ли я понимаю, как писать функции:
void Название_функции
{
что она делает
}
(Если что-то не так, то, пожалуйста, поправьте)

2)Можно встретить такое:
void Function_name (int n)
Для чего указывается int n?

3)Допустим, у меня написана функция с помощью void. А как её использовать, как записывать, что в таком-то месте должна выполняться эта функция?
Лев Силёкин
Лев Силёкин
2 203
функция для обозначения которой использовано служебное слово void это функция от которой не требуется возвращать какое то значение.
1) там у вас ошибка, в таком случае (используется функция без входных аргументов) надо писать void Nazvanie_funkcii ().
2) да такое написание вполне верно и служит чтобы показать что в качестве входного аргумента при вызове функции надо указать целочисленную переменную под именем n. Это например имеет смысл и очень удобно в следующем случае, смотрим:
void privet (int status)
{
switch (status)
{
case 0:
ShowMessage ("ситуация 1");
break;
default:
ShowMessage ("ситуация 2");
}
}
где мы отчётливо видим как функция взависимости от значения переменной status приняла решение о показе того или иного сообщения,
вызывать следует её так
privet(0); либо же privet(1); для получения желаемого сообщения
3) в глобальных переменных пишем прототип функции void privet (int status); обязательно увенчав точкой с зяпятой, где то в теле программы расписываем функцию как было расписано в 2), ну и вызываем потом далее в теле программы как было показано в том же 2)
Успехов вам в постижении этого великолепного языка, всегда рад помочь.
Нурлан Алмабаев
Нурлан Алмабаев
6 654
Лучший ответ
#include <iostream>
using namespace std;
/* если функция void, то она не имеет возвращаемого значения */
void number(int); // функция должна быть объявлена

int main()
{
int k;
cin >> k;
number(k); // функция должна быть вызвана
cin.get(); cin.get();
return 0;
}

void number(int num) // функция должна быть определена
{
if (num < 0) cout << "Число отрицательное";
else if (num > 0) cout << "Число положительное";
else cout << "Полный ноль! ";
cout << endl;
}
From Dushanbe City
From Dushanbe City
60 619
1. Делает что угодно, но не возвращает значения. Т. е.
void f(){printf("Ага! \n");}
...
f();//выведет Ага!
b=f();//ошибка: f() не возвращает значения!

2. Это параметр, который она принимает.
void f(int n){printf("%d",++n);}
...
f(5);//выведет 6
int b=5;
f(b);//выведет 6, b останется равным 5, т. к. в функцию передается только значение параметра

3. Смотри выше.