Вопрос-Ответ (C++)
|
|
Kornival | Дата: Воскресенье, 04 Сентября 2011, 19:10 | Сообщение # 1 |
The Witcher
Сейчас нет на сайте
| Чтобы не создавать отдельную тему на каждый глупый вопрос, предлагаю задавать их здесь.
Saitei: все вопросы по С задаём в теме Вопрос-Ответ (С). Благодарю за внимание!
|
|
| |
Нохчи | Дата: Четверг, 21 Июня 2012, 19:51 | Сообщение # 441 |
заслуженный участник
Сейчас нет на сайте
| А мне понравилось
Все работает кстати Code #define butif else if
int main() { bool a = false; int b = 0;
if(false) { b = 20; } butif(true) { b = 10; }
printf("%d",b); }
Многие вопросы по Windows отпадут, если посмотреть тут
|
|
| |
Saitei | Дата: Четверг, 21 Июня 2012, 20:42 | Сообщение # 442 |
старожил
Сейчас нет на сайте
| Quote (Saitei) Привет всем, это снова я! Создавая игру на движке GEGE (уже получается, мне помогает очень хороший человек, я смог перенести игру в "играбельній режим" для всех) я столкнулся с вопросом: "А КАК СДЕЛАТЬ ИКОНКУ?!" Вопрос актуален. Даже скажу более того: "АКТУАЛЕН ЕЩЁ КАК!"
|
|
| |
Нохчи | Дата: Четверг, 21 Июня 2012, 20:49 | Сообщение # 443 |
заслуженный участник
Сейчас нет на сайте
| Создай файл Res.rc, в нем напиши Code IDI_ICON1 ICON "Icon.ico" Icon.ico - название твоей иконки. Добавь этот файл в проект, скомпилируй его отдельно, собери проект.
Многие вопросы по Windows отпадут, если посмотреть тут
|
|
| |
Saitei | Дата: Четверг, 21 Июня 2012, 20:54 | Сообщение # 444 |
старожил
Сейчас нет на сайте
| Quote (Нохчи) отдельно, собери проект. Немного не понял
|
|
| |
Нохчи | Дата: Четверг, 21 Июня 2012, 20:55 | Сообщение # 445 |
заслуженный участник
Сейчас нет на сайте
| Quote (Saitei) Немного не понял Сосредоточься.
Многие вопросы по Windows отпадут, если посмотреть тут
|
|
| |
Saitei | Дата: Четверг, 21 Июня 2012, 20:59 | Сообщение # 446 |
старожил
Сейчас нет на сайте
| возникают трудности... Как создать в проекте такой файл?Добавлено (21.06.2012, 20:59) --------------------------------------------- В принципе мог в блокноте написать и изменить формат. Но это плохой тон
|
|
| |
Нохчи | Дата: Четверг, 21 Июня 2012, 21:01 | Сообщение # 447 |
заслуженный участник
Сейчас нет на сайте
| Quote (Saitei) В принципе мог в блокноте написать и изменить формат. Так и надо. Создай, добавь в проект, кликни на нем правой кнопкой(в обозревателе решений справа) и нажми "Компилировать. Дальше все как обычно.
Многие вопросы по Windows отпадут, если посмотреть тут
Сообщение отредактировал Нохчи - Четверг, 21 Июня 2012, 21:02 |
|
| |
Saitei | Дата: Четверг, 21 Июня 2012, 21:05 | Сообщение # 448 |
старожил
Сейчас нет на сайте
| Нохчи, Я явно дурак, ну знаю же. Долгодум.
Сообщение отредактировал Saitei - Четверг, 21 Июня 2012, 21:05 |
|
| |
Нохчи | Дата: Четверг, 21 Июня 2012, 21:07 | Сообщение # 449 |
заслуженный участник
Сейчас нет на сайте
| Не надо пытаться его открывать(двойной щелчок), нажми ПРАВОЙ кнопкой, откроется контекстное меню, там будет пункт компилировать.
Многие вопросы по Windows отпадут, если посмотреть тут
|
|
| |
Saitei | Дата: Четверг, 21 Июня 2012, 21:08 | Сообщение # 450 |
старожил
Сейчас нет на сайте
| Нохчи, во! До меня дошло))
|
|
| |
Nuclear_Sun | Дата: Суббота, 23 Июня 2012, 10:55 | Сообщение # 451 |
был не раз
Сейчас нет на сайте
| Всем доброго времени суток! Как известно, " return 0; " рапортует об успешном выполнении программы. Так в чем разница между:
и
???
Программе в принципе все равно какие данные ОС получила о ее завершении. Она до скобки последней дошла и завершилась. Может кто-нибудь мне раскрыть практический смысл return в программе?
Прошу прощения за столь глупый для любого знающего человека вопрос.
Сообщение отредактировал Nuclear_Sun - Суббота, 23 Июня 2012, 11:09 |
|
| |
Snuux | Дата: Суббота, 23 Июня 2012, 11:30 | Сообщение # 452 |
постоянный участник
Сейчас нет на сайте
| Как и любая функция "не типа void" должна возвращать значение. Quote (Nuclear_Sun) Программе в принципе все равно какие данные ОС получила о ее завершении. Не все-равно. И вообще компилятор должен выдать ошибку или предупреждение при компиляции функции без возвращаемого значения (кроме опять-таки void).
|
|
| |
Nuclear_Sun | Дата: Суббота, 23 Июня 2012, 12:20 | Сообщение # 453 |
был не раз
Сейчас нет на сайте
| Snuux, все работает как по маслу. Никаких предупреждений и ошибок. Вот я тоже во всех книжках читаю что не все равно, а оказывается что все равно...
Сообщение отредактировал Nuclear_Sun - Суббота, 23 Июня 2012, 12:23 |
|
| |
romgerman | Дата: Суббота, 23 Июня 2012, 12:23 | Сообщение # 454 |
старожил
Сейчас нет на сайте
| Nuclear_Sun, когда-то хотел изучить плюсы. Там вроде должно быть 2 раза return 0; Добавлено (23.06.2012, 12:23) --------------------------------------------- Блин, ты уже сменил пост)
|
|
| |
Archido | Дата: Суббота, 23 Июня 2012, 12:26 | Сообщение # 455 |
Сэнсэй
Сейчас нет на сайте
| Nuclear_Sun ОС и вправду все равно, что там ей вернет приложение, но это можно использовать при выполнении shell скриптов (.bat файлы), реализуя например ветвления в скрипте в зависимости от того, что вернуло приложение. В Win есть такая переменная %ERRORLEVEL%, которая и хранит это. Тут чуть подробнее.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
Maxaon | Дата: Суббота, 23 Июня 2012, 17:33 | Сообщение # 456 |
участник
Сейчас нет на сайте
| Nuclear_Sun, есть такое правило: каждая функция должна возвращать свое значение, исключая ту функцию типом которого является void Допустим есть такая функция: Code int do_swap(int &v1) { //... return v1; } и такая Code void swap(int &v1, int &v2) { /*...*/ v1=v2*v1; } В первом случае функция do_swap должна возвратить тип int А вот в функции типа void оператор return неявно размещается после последнего оператора Как правило, функции типа void используют оператор return для преждевременного завершения программы
Есть очень важное исключение из данного правила-это фунция main. Она способна завершить выполнение ничего не возвращая. Если управление достигает конца функции main() и не встечает оператора return, она неявно возращает 0. Возвращаемое функцией main() значение рассматривается как индикатор состояния: 0-успех, 1-фиаско)
|
|
| |
Phantom | Дата: Суббота, 23 Июня 2012, 22:31 | Сообщение # 457 |
частый гость
Сейчас нет на сайте
| Доброго времени суток! Можете детально объяснить эту строчку кода?Я понимаю,что это главная функция программы и переменная,но не понимаю,что в скобках. Quote int main(int nNumberofArgs, char* pszArgs[]) Зарание спасибо.
Дайте мне точку опоры и я переверну весь мир!
|
|
| |
SWFcreator | Дата: Суббота, 23 Июня 2012, 23:07 | Сообщение # 458 |
участник
Сейчас нет на сайте
| Phantom, вот, тут подробно объяснено nNumberofArgs обычно называют argc, а pszArgs - argv.
|
|
| |
Saitei | Дата: Воскресенье, 24 Июня 2012, 01:39 | Сообщение # 459 |
старожил
Сейчас нет на сайте
| Quote (Нохчи) IDI_ICON1 ICON "Icon.ico" Сам ярлык в папке изменился, а вот при вызове игры - нифига. Добавлено (24.06.2012, 01:39) --------------------------------------------- ток тут вин32. int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int)
|
|
| |
Demeron | Дата: Воскресенье, 24 Июня 2012, 10:47 | Сообщение # 460 |
User created in C++
Сейчас нет на сайте
| Quote (Saitei) Сам ярлык в папке изменился, а вот при вызове игры - нифига. После вызова engineInit: Code HWND hWnd=windowGetHWND(); HANDLE icon1 = LoadImage(GetModuleHandle(NULL), "c:\\icon.bmp", IMAGE_BITMAP, 32, 32, LR_LOADFROMFILE);//для BMP 32x32 HANDLE icon2 = LoadImage(GetModuleHandle(NULL), "c:\\icon.ico", IMAGE_ICON, 32, 32, LR_LOADFROMFILE);//для ICO 32х32
SendMessage(hWnd, WM_SETICON, ICON_BIG, icon1); SendMessage(hWnd, WM_SETICON, ICON_SMALL, icon1);
Сообщение отредактировал Demeron - Воскресенье, 24 Июня 2012, 10:52 |
|
| |