Вопрос № 181145: Здравствуйте, уважаемые эксперты! Вопрос достаточно банальный, но я как-то не соображу никак. Есть проект test в Visual C++ 2008. В него входят заголовочные файлы, ресурсы и исходные файлы. В данный момент есть один исходный файл: test.c...
Вопрос № 181157: Здравствуйте, уважаемые эксперты! Прошу Вас помочь с переделыванием программ в приложении, написаных на code blocks, в одну программу с динамическими структурами. Хочется в готовой программе увидеть следующий вывод: http://s43.radikal.ru/i102/101...
Вопрос № 181145:
Здравствуйте, уважаемые эксперты!
Вопрос достаточно банальный, но я как-то не соображу никак. Есть проект test в Visual C++ 2008. В него входят заголовочные файлы, ресурсы и исходные файлы. В данный момент есть один исходный файл: test.cpp В этом файле содержатся две подпрограммы: sub1 и sub2. Обе эти подпрограммы используют общие глобальные переменные, которые также перечислены в файле test.cpp. Задача: вынести подпрограмму sub2 в отдельный файл sub2.cpp, включив его в проект test. Таким
образом в проекте окажется два исходных файла: test.cpp с подпрограммой sub1 и sub2.cpp с подпрограммой sub2.
Вопрос: каким образом надо модифицировать файлы test.cpp и sub2.cpp?
Глобальные переменные в sub2.cpp надо описать с ключевым словом extern. Это значит, что они определены где-то еще. После этого их можно использовать. Линковщик найдет эти переменные в файле test.obj, и все будет хорошо. Другой способ - описать эти переменные в заголовочном файле. Тогда в начале файла поставить надо #pragma once Если одна из подпрограмма вызывает другую, ее тоже можно объявить со словом extern
Ответ отправил: Гаряка Асмик (Профессор)
Ответ отправлен: 07.12.2010, 16:09
Номер ответа: 264573
Вам помог ответ? Пожалуйста, поблагодарите эксперта за это! Как сказать этому эксперту "спасибо"?
Отправить SMS#thank 264573
на номер 1151 (Россия) |
Еще номера »
Ответ поддержали (отметили как правильный):
1 чел.
Вопрос № 181157:
Здравствуйте, уважаемые эксперты! Прошу Вас помочь с переделыванием программ в приложении, написаных на code blocks, в одну программу с динамическими структурами. Хочется в готовой программе увидеть следующий вывод: http://s43.radikal.ru/i102/1011/cc/79e92bc876cb.png Спасибо.
for (k=0, sum2=0; k<MAX_BALLS; k++) sum2+=tek2->Balls[k];
if(sum1>sum2) { //меняем местами ссылки в структурах if (tek1->Next != tek2) { //если стоят не рядом work = tek1->Next; tek1->Next = tek2->Next; tek2->Next = work;
work = tek1->Prev; tek1->Prev = tek2->Prev; tek2->Prev = work;
tek1->Prev->Next = tek1; if (tek1->Next) tek1->Next->Prev =
tek1; tek2->Next->Prev = tek2; if (tek2->Prev) tek2->Prev->Next = tek2; else *head = tek2; } else { //следуют друг за другом tek1->Next = tek2->Next; tek2->Next = tek1; tek2->Prev = tek1->Prev; tek1->Prev = tek2; if (tek2->Prev) tek2->Prev->Next = tek2; else *head = tek2; if (tek1->Next)
tek1->Next->Prev = tek1; } work = tek1; tek1 = tek2; tek2 = work; } } }
----- Люби своего ближнего, как самого себя
Ответ отправил: Лысков Игорь Витальевич (Старший модератор)
Ответ отправлен: 08.12.2010, 09:46
Номер ответа: 264585 Украина, Кировоград Тел.: +380957525051 ICQ # 234137952 Mail.ru-агент: igorlyskov@mail.ru
Оценка ответа: 5
Вам помог ответ? Пожалуйста, поблагодарите эксперта за это! Как сказать этому эксперту "спасибо"?
Отправить SMS#thank 264585
на номер 1151 (Россия) |
Еще номера »
Оценить выпуск »
Нам очень важно Ваше мнение об этом выпуске рассылки!
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.