Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.84/141: Рейтинг темы: голосов - 141, средняя оценка - 4.84
TECHNO
 Аватар для Василий-Робот
28 / 28 / 8
Регистрация: 04.11.2009
Сообщений: 366

функция может вызывать другую функцию?

05.02.2011, 16:45. Показов 26309. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
функция может вызывать другую функцию? (не саму себя)
или это невозможно?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
05.02.2011, 16:45
Ответы с готовыми решениями:

Может ли функция иметь аргументом другую функцию или объект?
Внимание тупой вопрос )) А может ли функция иметь аргументом другую функцию или объект?

Создать объект внутри класса, который может вызывать функцию этого класса
Ребята помогите уже несколько дней мучаюсь. Хочу сделать программу в консоле демонстрации работы лифта в здании 2 этажа. Сделал класс...

Создать функцию, которая будет вызывать другую функцию
Доброго времени суток. Изучаю PHP и вот столкнулся с такой практикой, не знаю как реализовать. Первым делом нужно было создать функцию,...

9
13 / 13 / 2
Регистрация: 25.10.2009
Сообщений: 32
05.02.2011, 16:47
Может.
0
TECHNO
 Аватар для Василий-Робот
28 / 28 / 8
Регистрация: 04.11.2009
Сообщений: 366
05.02.2011, 16:48  [ТС]
к а к?
0
13 / 13 / 2
Регистрация: 25.10.2009
Сообщений: 32
05.02.2011, 16:51
C
1
2
3
4
void func1()
{
  func2();
}
0
 Аватар для zulkis
686 / 613 / 43
Регистрация: 13.01.2011
Сообщений: 1,722
05.02.2011, 16:51
Хм

C++
1
2
3
4
5
void someFunc(void){
//do smtn
}
void anotherSomeFunc(void)
{someFunc();}
1
1080 / 1007 / 107
Регистрация: 28.02.2010
Сообщений: 2,889
05.02.2011, 16:56
Если первая функция объявлена после второй - да.
Если заголовок второй функций описан в начале файла - да.

Добавлено через 32 секунды
Если первая функция объявлена до второй - не знаю.

Добавлено через 3 минуты
Цитата Сообщение от Евгений М. Посмотреть сообщение
Если первая функция объявлена до второй - не знаю.
Узнал. Ответ - нет.
0
 Аватар для zulkis
686 / 613 / 43
Регистрация: 13.01.2011
Сообщений: 1,722
05.02.2011, 17:04
Евгений М., вы бы пояснили какая из функция какую вызывает... А то первая, вторая... Так и мой пример неправилен будет, смотря с какой точки рассмотреть где первая, где вторая.
0
1080 / 1007 / 107
Регистрация: 28.02.2010
Сообщений: 2,889
05.02.2011, 17:07
Первая вызывает вторую. Ваш пример правильный.
0
 Аватар для zulkis
686 / 613 / 43
Регистрация: 13.01.2011
Сообщений: 1,722
05.02.2011, 17:10
Да я то знаю что он правильный
Просто я к тому, что человек не писал где первая, а где вторая, и если их поменять местами, они будут вторая и первая, и работать не будут ))
Ну или это уже мои бзики на почве немощи сделать CheckComboBox на c++ :|
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.02.2011, 18:32
Может, ТС имел в виду вызов переданной в качестве аргумента функции? Вот пример (простой целочисленный калькулятор):

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#include <stdio.h>
#include <stdlib.h>
 
#define CNT 4
 
typedef int (*oper)(int, int);
 
int o_add(int, int);
int o_sub(int, int);
int o_mul(int, int);
int o_div(int, int);
 
oper operators[CNT] =
{
    o_add,
    o_sub,
    o_mul,
    o_div
};
 
void processAction(int, int, oper);
 
int main()
{
    int action;
    int arg1, arg2;
        
    while(1)
    {
    puts("Select an action:\n"
         "\t1. addition\n"
         "\t2. subtraction\n"
         "\t3. multiplication\n"
         "\t4. division\n"
         "or something else to exit...");
    
    
    while((action = getchar()) == '\n' || action == EOF)
        ;
        
    if(action < '1' || action > '4')
        exit(0);
    
    puts("Input arguments");
    scanf("%d %d", &arg1, &arg2);
 
    processAction(arg1, arg2, operators[action - '1']);
    puts("And one more time...\n");
    }
    
    exit(255);
}
 
int o_add(int a1, int a2)
{
    return a1 + a2;
}
 
int o_sub(int a1, int a2)
{
    return a1 - a2;
}
 
int o_mul(int a1, int a2)
{
    return a1 * a2;
}
 
int o_div(int a1, int a2)
{
    if(a2 == 0)
    {
    fputs("Error: division by zero\n", stderr);
    exit(1);
    }
    
    return a1 / a2;
}
 
void processAction(int a1, int a2, oper o)
{
    printf("Given arguents are `%d' and `%d', and the result is `%d'\n", a1, a2, o(a1, a2));
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.02.2011, 18:32
Помогаю со студенческими работами здесь

Как вызывать функцию в другую функцию?
в одной функции пытаюсь вызывать другую функцию следующей строкой: m = newdate(pdate) сама функция, которую вызываю: ...

Длительное нажатие кнопки должно вызывать другую функцию, нежели обычное
Добрый день! Подскажите может кто-то уже с этим сталкивался, как реализовать длительное нажатие на кнопку QPushButton (Qt4)? При...

Батарейка на материнской плате может вызывать тормоза ?
Имею мамку... Вес комп вот... Играю в игру, допустим, Lineage II. При большом скоплении народу, при поворачивании мышки туда-сюда,...

Видимость переменных. Может ли метод вызывать сам себя?
Такой вот вопросец появился. Имеем гипотетический метод с циклом for, который обрабатывает строку. Если внутри цикла вызвать этот же метод...

ASUS M51Tr: утилита Power4Gear может вызывать перегрев ?
После установки Win7 на нойтбук &quot;ASUS M51Tr&quot; владелец сказал, что чувствует нагрев (видимо держал на коленях/руках, а не на столе, во время...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru