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

функция main() - C++

Восстановить пароль Регистрация
 
Жека_
Заблокирован
02.05.2011, 01:25     функция main() #1
может ли функция возвращать функцию
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int z()
{
  .......
//надо типо того сделать return int main();
}
 
void x()
{
 ....
 z();
 ....
}
 
int main()
{
  .......
  x();
  .......
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2011, 01:25     функция main()
Посмотрите здесь:

C++ Функция main
Функция main C++
C++ Функция main () {}
Функция main с аргументами C++
C++ Функция main() и ситаксические ошибки
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
02.05.2011, 01:30     функция main() #2
1) main нельзя вызывать
2) для чего?
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
02.05.2011, 01:35     функция main() #3
Жека_, можно так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int x ()
{
    return 1;
}
 
int y ()
{
    return x();
}
 
int main ()
{
    std::cout << y();
 
    return 0;
}
lemegeton
 Аватар для lemegeton
2910 / 1339 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
02.05.2011, 01:45     функция main() #4
Можно вернуть указатель на функцию.
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
char a() { return 'a'; }
char b() { return 'b'; }
char c() { return 'c'; }
 
void *RandomFunction() {
  switch (rand() % 3) {
    case 0:  return a;
    case 1:  return b;
    default: return c;
  }
}
 
int main(int argc, char *argv[]) {
  srand(time(NULL));
 
  int (*function)() = RandomFunction();
  printf("%c\n", function());
 
  return 0;
}
prazuber
108 / 108 / 3
Регистрация: 29.04.2010
Сообщений: 240
02.05.2011, 02:08     функция main() #5
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
#include <iostream>
using namespace std;
 
// p_main is a pointer to the "int some_function()"
typedef int (*p_main)(void);
 
int main(); // declaration of main
 
p_main foo(int& i) 
{
  i++; // increase i
  return &main; // return pointer to main
}
 
int main()
{
  static int i = 0;
  if (i == 2)
  {
    cout<<"hell yeah"<<endl;
    exit(0);
  }
  p_main main_func = foo(i);
  (*main_func)();   // recursive call of main() func, similar to main();
  return 0;
}
Как-то так
resource2008
 Аватар для resource2008
109 / 109 / 2
Регистрация: 11.03.2011
Сообщений: 421
02.05.2011, 04:22     функция main() #6
перлы
Yandex
Объявления
02.05.2011, 04:22     функция main()
Ответ Создать тему
Опции темы

Текущее время: 12:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru