Вопрос № 68400: Добрый день, уважаемые эксперты!
Возникли следующие вопросы. Программирую на С/С++, используя исключительно WinApi.
Известен способ получения нестандартной формы для окна или элемента управления, работая с регионами и BITMAP(ом), уд...Вопрос № 68412: В массиве надо поменять местами максимальный отрицательный и минимальный положительный элементы
я их нахожу, а как вывести массив что бы они поменялись не знаю, подскажите плиз, нахождение элемеентов в приложении...Вопрос № 68438: Добрых суток всем!
Дали мне задание сделать под Линуксом что-то типа чата, использую разделяемую память. Т.е. открываем две консоли, в каждой из них запускаем прогу. Теперь сообщения отправленные из первой должна вывести на экран вторая прог...Вопрос № 68475: Здравствуйте,Уважаемые эксперты!Вопрос чайника:задался целью изучить язык програмированния из раздела С,но их сейчас настолько много(С,С++,Visual C++,С#) что я и не знаю на каком остановиться и чем они отличаются, где и какой мануал
можно скачать.Зар...Вопрос № 68518: Здраствуйте все кто читает письмо.
Я начинаю изучать С++, подскажите пожалоста где можно скачать книги по даному языку програмирования. А также подскажите ссылки на сайти, которие имеют отношение к даному языку програмирования.
Зарание спаси...
Вопрос № 68.400
Добрый день, уважаемые эксперты!
Возникли следующие вопросы. Программирую на С/С++, используя исключительно WinApi.
Известен способ получения нестандартной формы для окна или элемента управления, работая с регионами и BITMAP(ом), удаляя из последнего ненужные биты и присваивая резельтат тому самому региону. Однако мои знания ограничиваются использованием для таких целей bmp-файлов. Таким образом вопросы мои формулируются так:
1)Как придать окну нестандартный вид, используя такие форматы, как jpeg, gif.
2)Как сделать окно нестандартного вида на основе готового файла png, поддерживающего прозрачные области.
Основной акцент я ставлю на второй вопрос, хотя ответ на первый также интересует.
Коды с примерами всецело приветствуются.
Ссылки на источники, где можно получить ответы на данные вопросы так же не лишние.
Заранее СПАСИБО!
Отправлен: 24.12.2006, 17:08
Вопрос задал: VSP (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Sergey A. Wedensky
Здравствуйте, VSP!
Для чтения форматов JPEG, GIF, PNG, TIFF, как впрочем и BMP можно использовать GDI+. Кстати, там есть и много других полезных функций - филтрация, создание миниатюр, преобразование формата и пр. В приложении пример кода. Не уверен, правда, что альфа-канал в первом байте, посмотрите сами.
Приложение:
Ответ отправил: Sergey A. Wedensky (статус: 10-ый класс)
Ответ отправлен: 26.12.2006, 12:44
Вопрос № 68.412
В массиве надо поменять местами максимальный отрицательный и минимальный положительный элементы
я их нахожу, а как вывести массив что бы они поменялись не знаю, подскажите плиз, нахождение элемеентов в приложении
Приложение:
Отправлен: 24.12.2006, 19:01
Вопрос задал: Андрюхаха (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: kool
Здравствуйте, Андрюхаха!
Напрмер так! (см. приложение).
Приложение:
Ответ отправил: kool (статус: 2-ой класс)
Ответ отправлен: 24.12.2006, 19:53 Оценка за ответ: 4
Отвечает: Терсков Сергей
Здравствуйте, Андрюхаха!
Попробуй вот такой вариант
Приложение:
Ответ отправил: Терсков Сергей (статус: 3-ий класс)
Ответ отправлен: 25.12.2006, 04:00 Оценка за ответ: 5
Отвечает: dentist
Здравствуйте, Андрюхаха!
думается в переменные min и max лутше запомнить индексы соответствующих элементов.
тогда обмен значениями может выглядеть так:
--------- "Software is like sex, it's better then it's free" (c) Linus Torvalds
Ответ отправил: dentist (статус: 7-ой класс)
Ответ отправлен: 25.12.2006, 09:51 Оценка за ответ: 4
Вопрос № 68.438
Добрых суток всем!
Дали мне задание сделать под Линуксом что-то типа чата, использую разделяемую память. Т.е. открываем две консоли, в каждой из них запускаем прогу. Теперь сообщения отправленные из первой должна вывести на экран вторая программа. И соответственно наоборот. Проблема одна. Как одноврмененно ждать от пользователя ввода текста и проверять не пришло ли сообщение от другой программы? Или же это не возможно?
Отвечает: Torsten
Здравствуйте, Дмитриев Денис Юрьевич!
В программировании возможно все, кроме ИИ.
Реализовать можно несколько способами.
1) использовать неблокируемый ввод/вывод
2) использовать потоки
В первом случае через fcntl устанавливаем принимающему сокету и файловым дескрепторам ввода/вывода флаг O_NONBLOCK. В цикле проверяем состояния ввода (ввел ли что-нибудь пользователь или нет), а так же слушаем не пришло ли нам что-нибудь на сокет. Это достаточно сложно кодить нужно много, ну вообще не удобно.
Второй способ - с помощью потоков. Создается дополнительный поток для прослушки или ввода данных. Один поток слушает с помощью select не пришло ли что-нибудь, ну и выводит это дело. А второй обрабатывает ввод данных.
Все это побродно описано у Стивенса - unix:разработка сетевых приложений. Там и исходные коды есть и комментарии и куча другой полезной информации.
--------- #define MAGIC_NUMBER 0xdeface
Ответ отправил: Torsten (статус: 4-ый класс)
Ответ отправлен: 24.12.2006, 23:02 Оценка за ответ: 5 Комментарий оценки: Спасибо! Попробую что-нибудь, может получится.
для этого испольщуется системный вызов select().
Есть множество примеров использования оного
Ответ отправил: Ramok (статус: 3-ий класс)
Ответ отправлен: 25.12.2006, 03:32 Оценка за ответ: 5 Комментарий оценки: Пока пытаюсь сделать иным путём, но может и это попробую.
Вопрос № 68.475
Здравствуйте,Уважаемые эксперты!Вопрос чайника:задался целью изучить язык програмированния из раздела С,но их сейчас настолько много(С,С++,Visual C++,С#) что я и не знаю на каком остановиться и чем они отличаются, где и какой мануал можно скачать.Заранее спасибо!
Отправлен: 25.12.2006, 06:26
Вопрос задал: Axe (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: n0name
Здравствуйте, Axe!
C++ и Visual C++ это не разные языки. C++ - это надстройка над С, вводящая ООП и некоторые возможности. C# в свою очередь это тот же C++, по синтаксису практически нет изменений.
Выбор языка зависит от того, что вы собираетесь программировать на нём. Если кроссплатформенные приложения, то лучше использовать С, если объекто-ориентированные, то C++.
Ответ отправил: n0name (статус: 8-ой класс)
Ответ отправлен: 25.12.2006, 07:27 Оценка за ответ: 4
Отвечает: dentist
Здравствуйте, Axe!
Visual C++ это вообще не язык, это среда разработки.
С++ и С# это всего лишь результат эволюции Си. Так что начав изучать Си, вы так или иначе, рано или поздно, в погоне за более удобными инструментами выйдите на С++ и/или на Си шарп.
В любом случае, советую начинать с изучения именно Си, т.к. он, как вы уже надеюсь поняли является "вступительным экзаменом" в школу С++/С#
--------- "Software is like sex, it's better then it's free" (c) Linus Torvalds
Ответ отправил: dentist (статус: 7-ой класс)
Ответ отправлен: 25.12.2006, 10:00 Оценка за ответ: 5
Отвечает: Torsten
Здравствуйте, Axe!
Значит так. С# вычеркиваем сразу. Этот язык никакого отношения к Си не имеет и не имел. Это аналог java от microsoft. Microsoft попытался за счет названия (буквы Си) привлечь в свои ряды программистов, конечно же настоящие программисты на такую чушь не поддались.
С/С++ - это можно считать что один язык. Все начиналось с Си который создавался как улучшенный ассемблер в 70-х годах. Затем в 80-х появился С++ - это Си с поддержкой обьекто-ориентированного программирования.
Visual C++ - это среда разработки от microsoft. Она облегчает процесс создания приложений для Windows ! Не для каких либо других систем. Сердце среды это библиотека MFC позволяющая быстро создать win32 приложения. Но в любом случае Visual C++ это обычный С++, никаких отличий в синтаксисе или чем-то еще нету. Есть библиотека MFC, но этих библиотек куча и бесплатных и коммерческих. От умения ими пользоватся (а точнее от умения пользоватся документацией к библиотеками) во многом зависит то, насколько быстрее и
правильнее программист сможет сравится с задачей.
Я не знаю на чем тебе нужно остановится, но в ВУЗАХ практикуется метода вначале изучается Си, затем С++. И в любом случае синтаксис С++ базируется на синтаксисе Си, плюс добавляет группу операторов для обьектно-ориентированного программирования.
По какой книге изучать абсолютно не важно, главное желание. Вот на этих сайтах можешь скачать практически любую книгу по С/С++.
http://c-books.info/
http://www.bookshelf.ru/
http://www.librus.ru/ (требуется регистрация + скачка с rapidshare)
--------- #define MAGIC_NUMBER 0xdeface
Ответ отправил: Torsten (статус: 4-ый класс)
Ответ отправлен: 25.12.2006, 10:37
Вопрос № 68.518
Здраствуйте все кто читает письмо.
Я начинаю изучать С++, подскажите пожалоста где можно скачать книги по даному языку програмирования. А также подскажите ссылки на сайти, которие имеют отношение к даному языку програмирования.
Зарание спасибо.
P.S. Вибачайте за помилки, я з України, російської мови ніколи не вчив.
Ответ отправил: Santana (статус: 8-ой класс)
Ответ отправлен: 25.12.2006, 14:23
Отвечает: Ramok
Здравствуйте, Мельник Виктор!
тут ви знайдете багато цiкавого Ж;-))
http://proklondike.com/
http://www.wmasn.com/books/
http://www.livejournal.com/users/den80/27489.html
http://openlib.org.ua/
http://zipsites.ru/
http://c2p.ru/
http://all-ebooks.com
Ответ отправил: Ramok (статус: 3-ий класс)
Ответ отправлен: 25.12.2006, 16:49