Здравствуйте, уважаемые эксперты! Есть буфер char Buffer[255]. Мне нужно в него записать последовательность ASCII символов: /?!CRLF (или в Hex-виде 2F3F210D0A). Я это делаю следующим образом: Buffer[0]=’0x2F’; Buffer[1]=’0x3F’; Buffer[2]=’0x21’; Buffer[3]=’0x0D’; Buffer[4]=’0x0A’; Вопрос: можно ли записать в буфер данные более изящным способом?
Приветствую Вас, Эдуард! Можно например так: сhar Buffer[255] = { 0x2F, 0x3F, 0x21, 0x0D, 0x0A }; Или если не хотите инициализировать сразу, то так: char Buffer[255]; char Buffer2[5] = { 0x2F, 0x3F, 0x21, 0x0D, 0x0A }; // Тут делаете что хотите с Bufferом // И когда нужно присвоить ваши значения, пишете: memcpy(Buffer, Buffer2, 5); Ответ отправлен: 02.06.2004, 18:13 Отправитель: CrackLab Отвечает bocha
Добрый день, Эдуард! char buf[256]="/?!\r\n"; strcpy(buf,"\0x2F\0x3F\0x21\0x0D\0x0A"); memcpy(buf, "/?!\r\n", 4); for(int i =0; i < 256; i++)buf[i]=i; buf[0]=0x2F;//без кавычек
Ответ отправлен: 03.06.2004, 05:58 Отправитель: bocha Отвечает Gibbel
Доброе время суток, Эдуард! Можно. sprintf(Buffer,"/?!\n"); Ответ отправлен: 02.06.2004, 17:42 Отправитель: Gibbel
Вопрос № 1673
Доброе время суток ! вопрос, наверное больше по С++, но и винапи тоже: программа ставит хук на события мыши, и пищит, когда получила перехваченное сообщение. но только для своего окна - когда курсор уходит с моего окна сообщения не приходят. у ицзелиона написано (в приложении), я правильно понял, что дело именно в том, что бы поставить флаг на общее использование данных в длл ? если да - то как это сделать в VC++6.0 ? спасибо
Здравствуйте, vova! #pragma comment(linker, "") в кавычках - нужную опцию какую не помню, если в примерах к источнику испоьзуется MASM, то ту же самую Ответ отправлен: 03.06.2004, 16:30 Отправитель: bocha
Вопрос № 1675
Есть база данных, в ней таблица, по которой в итоге можно построить дерево. Т.е. каждая строка имеет свой ID и имеет столбец в которой указывается номер строки предка (ID). Мне нужно при помощи CTreeCtrl построить это дерево. Так вопрос собственно в том, как это сделать оптимально, тк не очень радует переспектива вытаскивать сразу около 500 000 строк и с ходу строить дерево. И желательно, что бы все "+" были около тех элементов, которые имеют "потомков".
Добрый день, HiRuRg! 1. надо локнуть апдейт окна, чтобы на перерисовку не тратилось время, потом соответственно анлокнуть. 2. создаешь корневой элемент. 3. max_id = 1; 4. for i = 1 to max_id do 5. select * from catalog where parentID = i; 5.1. надо заполучить handle элемента с id == i; 6. for_each in result_set do 7. if entry.id > max_id then 8. max_id = entry.id 9. end_if 10. add_element_to_tree(entry); 11. end_for_each 12. end_for Можно оптимизировать храня в базе бит, который указывает есть у данного элемента наследники, и если нет - тогда не делать запрос. Ответ отправлен: 03.06.2004, 08:49 Отправитель: vitya Отвечает bocha
Добрый день, HiRuRg! Можно создать динамическое дерево примерно таким образом: посылаешь запрос на те строки, у которых Parent_ID == 0, добавляешь их в дерево. В данные к каждому из этих элементов пихаешь указатель на запрос, с ParentID == CurrentID Обрабатывая щелчек на элементе дерева посылаешь ентот запрос и добавляешь ветвь из вернувшегося ответа. Т.о. нен необходимости одномоментно формировать все дерево. Или после формирования родителя пускаешь каждый запрос отдельным потоком, с задержкой после создания нескольких. Ответ отправлен: 05.06.2004, 02:34 Отправитель: bocha
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.