Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.07.2015, 22:46   #1
umirotvorennii
Пользователь
 
Регистрация: 15.02.2015
Сообщений: 16
По умолчанию Как вызваь функцию

Всем привет. Вот отрывок кода, разбитого на функции, сначала программа идет как по маслу, а функция sum не вызывается. Объясните почему.
Код:
#include<iostream>
#include <stdio.h>

	void sum (void)
	{
		using namespace std;
		setlocale (LC_CTYPE, "Russian");
		cout<<"Сложение"<<endl;
		int A, B, x;
		cout<<"x=A+B, сложение, поочередно введите А, затем В"<<endl;
		cin>>A;
		cin>>B;
		x=A+B;
		cout<<"Результат сложения "<<x<<endl;
	}

	void main (void)
{
	using namespace std;
	setlocale (LC_CTYPE, "Russian");
	cout<<"Вычитание"<<endl;
	int D, E, y;
	
	cout<<"y=D-E, поочередно введите Д затем Е"<<endl;
	cin>>D;
	cin>>E;
	y=D-E;
	cout<<"Результат вычитания "<<y<<endl;
	sum;
	system("pause");
}

Последний раз редактировалось Stilet; 29.07.2015 в 08:50.
umirotvorennii вне форума Ответить с цитированием
Старый 28.07.2015, 23:00   #2
Krasiosoft
Форумчанин
 
Аватар для Krasiosoft
 
Регистрация: 01.06.2015
Сообщений: 497
По умолчанию

Вместо "sum;" нужно написать "sum();"

И "setlocale (LC_CTYPE, "Russian");" с функции sum() можно убрать.
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).

Последний раз редактировалось Krasiosoft; 28.07.2015 в 23:05.
Krasiosoft вне форума Ответить с цитированием
Старый 29.07.2015, 06:05   #3
jura_k
gamer
Участник клуба
 
Аватар для jura_k
 
Регистрация: 09.05.2015
Сообщений: 1,529
По умолчанию

sum - это простая переменная.
sum () - это функция.
[Которая должна быть описана (хотя бы), прежде чем её можно вызвать. У тебя она не только описана, но и определена сразу.]
мой канал на Ютубе: youtube.com/@games-zz3ju/videos/
мой канал на Рутубе: rutube.ru/channel/31423139/videos/
В ожидании Кеши...
jura_k вне форума Ответить с цитированием
Старый 29.07.2015, 22:51   #4
Krasiosoft
Форумчанин
 
Аватар для Krasiosoft
 
Регистрация: 01.06.2015
Сообщений: 497
По умолчанию

В данном случае sum - это указатель на функцию.
Код:
    typedef void (*myFunc)();

    myFunc tempFunc = sum;

    tempFunc();  // вызов функции sum
Если помог, буду очень благодарен за Ваш отзыв (весы в левой нижней части сообщения).
Krasiosoft вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Язык LISP] Используя функцию DEFUN, определить функцию DemonXZ Помощь студентам 0 09.06.2013 18:10
Описать функцию нахождения расстояния между 2-мя точками на плоскости, заданными своими координатами, и функцию .... zzz6 Помощь студентам 2 06.07.2011 08:24
Как использовать отдельную программу как функцию Hemul Общие вопросы C/C++ 1 02.05.2011 19:11
Как передать указатель на функцию в функцию WIN32APIist Общие вопросы C/C++ 1 27.01.2011 10:35
Как автоматизировать функцию? MilanAC Помощь студентам 2 13.08.2009 15:11