19 / 19 / 2
Регистрация: 29.11.2009
Сообщений: 224
1

Слабо создать программу, которая много чего делает, а в main только return 0?

22.01.2010, 01:58. Показов 3044. Ответов 26
Метки нет (Все метки)

Пояснение:

Имеется некая функции
C++
1
Function() {}
Причем она может делать что угодно.
Кто-то знает, как запустить эту функцию НЕ из main?

Например:

C++
1
2
3
4
5
6
7
8
9
void Function() // Любая ф-ия, которая делает что угодно. (Пример)
{
    cout << "Succeed!\n";
}
 
int main()
{
    return 0;
}
(чё-то сделать, main() НЕ менять!)
Результат:
Bash
1
2
3
overpower8@Milla-home:~/Projects$ g++ Program.cpp -o Program
overpower8@Milla-home:~/Projects$ ./Program
Succeed!


Я знаю, как это сделать. Но знает ли кто-либо еще?
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.01.2010, 01:58
Ответы с готовыми решениями:

Создать программу, которая состоит из отдельных функций, вызываемых к методе main ()
Задана не пустая последовательность слов из латинских букв. Последним символом этой послидновности...

Почему в одних случаях пишут void main(), а в других случаях int main() {return 1;}
Препод мне доказывает, что void в main`е писать неправильно, а объяснить не может почему. Кто...

Создать программу, которая в символьной строке оставляет только те слова, в которых есть повторяющиеся символы
Помогите создать программу, которая в символьной строке оставляет только те слова, в которых есть...

Создать программу, которая удаляет последнюю букву во введенном имени, пока не останется только одна буква
Создать программу, которая удаляет последнюю букву во введенной имя, пока не останется только одна...

26
depict1
281 / 146 / 4
Регистрация: 11.07.2009
Сообщений: 606
22.01.2010, 12:48 21
Цитата Сообщение от OVERPOWER8 Посмотреть сообщение
А вот и не правда! У меня на G++ он идеально заработал!
мда... GCC содержит в себе G++
0
4200 / 1792 / 211
Регистрация: 24.11.2009
Сообщений: 27,563
22.01.2010, 12:50 22
C
1
G++;
,
C++
1
G++;
,
C#
1
G++;
по-моему это переносимый код инкремента переменной с именем g.
0
Evg
Эксперт CАвтор FAQ
21193 / 8209 / 633
Регистрация: 30.03.2009
Сообщений: 22,522
Записей в блоге: 30
22.01.2010, 13:13 23
Цитата Сообщение от taras atavin Посмотреть сообщение
Единственный? Я так не думаю. Разве нельзя покопаться в готовом исполняемом коде и подменить стартовый адрес в заголовке файла?
А ещё можно перепрошить биос и чтобы он сразу при запуске программы hello world печатал. Можно пойти ещё дальше и внести изменения прямо в процессор, чтобы наверняка работало

OVERPOWER8, gcc и g++ это по большому счёту одно и то же, называемое общим словом "GNU-комилятор"
2
Maniac
Эксперт С++
1455 / 956 / 159
Регистрация: 02.01.2009
Сообщений: 2,816
Записей в блоге: 1
22.01.2010, 13:15 24
Evg,
0
1258 / 796 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
22.01.2010, 22:36 25
Знаю из WinMain можно.

Добавлено через 1 минуту
Я вообще ни въеду к чему эти вопросы.

Добавлено через 3 минуты
OVERPOWER8:
Ты ещё битцепсем похвастайся.

Добавлено через 4 минуты
как запустить эту функцию НЕ из main?
inline void f1() {
Function();
}
0
4318 / 1486 / 101
Регистрация: 12.04.2009
Сообщений: 2,342
22.01.2010, 22:50 26
Цитата Сообщение от taras atavin Посмотреть сообщение
по-моему это переносимый код инкремента переменной с именем g.
C++
1
2
3
4
5
6
7
8
#include <iostream>
int main() 
{ 
    int i=0;
    int r = (i++)+(i++); 
    std::cout << r; 
    return 0; 
}
Код
out: 0
C#
1
2
3
4
5
6
7
8
9
10
using System;
class Program
{
    static void Main(string[] args)
    {
        int i = 0;
        int r = (i++) + (i++);
        Console.WriteLine(r);       
    }
}
Код
out: 1
переносимого кода не бывает
0
depict1
281 / 146 / 4
Регистрация: 11.07.2009
Сообщений: 606
22.01.2010, 22:56 27
Цитата Сообщение от HIMen Посмотреть сообщение
переносимого кода не бывает
уже 1000 раз обсуждалось. ключевые слова для гугла(без кавычек): "sequence point i++"
Цитата Сообщение от HIMen Посмотреть сообщение
int r = (i++)+(i++);
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.01.2010, 22:56

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Создать программу, которая подсчитывает количество чисел в тексте и выводит на екран все слова, состоящие только из латинских букв
Создать программу , которая подщитывает количество чисел в тексте (не цыфр, а именно чисел);...

Написать основную программу main, которая
Написать основную программу main, которая а) в режиме диалога вводит исходные данные Х,  и N -...

Как в main() создать указатель на функцию, которая находится в классе?
В этом примере как определить указатель на функцию F()? class A { public: bool F(int &amp;a, int...

Написать программу которая делает перестановки введенных симолов
Доброго всем времени суток. вот такая задачка. 4. Написать программу которая делает перестановки...

Написать программу, которая из обычного трека делает минус
Всем доброго времени суток! Проблема такая: нужно написать программу, которая из обычного трека...

Использование return в main
Если возвращаем 0 то это означает что прога норм завершилась, иначе значит были какие то ошибки,...


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

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Опции темы

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