Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / C/C++

Выпуск № 484
от 03.08.2006, 13:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 350, Экспертов: 44
В номере:Вопросов: 4, Ответов: 8


Вопрос № 50472: Здравствуйте, эксперты! Вопрос такой. Пишу программу для обслуживания MS SQL Server, используя SQL-DMO. Все инклюды подключены, программа компилится отлично, однако при линковке дает ошибку: SettingsDialog.obj : error LNK2001: unresolved...
Вопрос № 50480: Здравствуйте. Ответьте пожалуйста начинающему программисту, что значит ошибка при создании исполняемого файла: "comport.cpp(426) : fatal error C1010: unexpected end of file while looking for precompiled header directive Error execut...
Вопрос № 50500: Здравствуйте. Дан массив из 6-ти чисел. Мне нужно проверить чтобы среди них не было более 2-х идущих подряд(2 можно), т.е 1,2,10,20,30,40 - можно, а если 1,2,3,10,20,30 - уже нельзя. Думал, думал сам, как это можно сделать, но так ничего и не придума...
Вопрос № 50510: Здравствуйте! Если возможно, пришлите мне код любой sis-овской игрушки для смартфонов. Слышал что они пишуться на С++, очень хочется научиться их писать, но не знаю, с чего начать!...

Вопрос № 50.472
Здравствуйте, эксперты!
Вопрос такой. Пишу программу для обслуживания MS SQL Server, используя SQL-DMO. Все инклюды подключены, программа компилится отлично, однако при линковке дает ошибку:

SettingsDialog.obj : error LNK2001: unresolved external symbol _CLSID_SQLDMOServer
SettingsDialog.obj : error LNK2001: unresolved external symbol _IID_IWSQLDMOServer

Я понимаю, что задача тривиальна и решение где-то на поверхности. Но пока что-то не получается решить ее. Что и где надо подключчить к проекту еще, чтобы линкер не ругался и хватал код как положено?

MS SQL Server 2000
MS VC++ 6 и MS VS.NET 2003

Спасибо.
Отправлен: 28.07.2006, 18:32
Вопрос задал: Jadd (статус: Профессионал)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: X-MAN
Здравствуйте, Jadd!
вам нужен файл sqldmo.lib, если найдёте - я за вас рад!
---------
Оптимисты начинают день с имунеле, реалисты - с кофе, а пессимисты - с водки!
Ответ отправил: X-MAN (статус: 7-ой класс)
Ответ отправлен: 28.07.2006, 23:53
Оценка за ответ: 1
Комментарий оценки:
Ты не поверишь, но все решается просто. Об этом даже в мануале написано. Просто #include "sqldmo.h" нужен именно в том модуле, где идет вызов интерфейсов.


Вопрос № 50.480
Здравствуйте. Ответьте пожалуйста начинающему программисту, что значит ошибка при создании исполняемого файла:

"comport.cpp(426) : fatal error C1010: unexpected end of file while looking for precompiled header directive
Error executing cl.exe.

COMPORT.OBJ - 1 error(s), 0 warning(s)"

и как ее исправить.

Спасибо.
Отправлен: 28.07.2006, 20:16
Вопрос задал: Amper (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Sling
Здравствуйте, Amper!
Проблема часто встречается и решается довольно просто
В Visual Studio .NET компилятор сообщает об ошибке более полно:
fatal error C1010: unexpected end of file while looking for precompiled header. Did you forget to add '#include "stdafx.h"' to your source?
И компилятор в данном случае прав как никогда.
Нужно во все cpp файлы ПЕРВЫМ подключить файл stdafx.h
#include "stdafx.h"
(Либо в треугольных скобках)
---------
The fear of blood tends to create fear for the flesh
Ответ отправил: Sling (статус: 2-ой класс)
Ответ отправлен: 29.07.2006, 01:23
Оценка за ответ: 5
Комментарий оценки:
Спасибо за ответ.

Отвечает: gitter
Здравствуйте, Amper!
В дополнение к предыдущему ответу, если Вы не используете файлы stdafx.* за ненадобностью, например, необходимо в свойствах проекта выбрать "Not using precompiled headers", тогда, больше не будет такой ошибки

Удачи!
Ответ отправил: gitter (статус: Студент)
Ответ отправлен: 29.07.2006, 10:44

Отвечает: Иванов Игорь Михайлович
Здравствуйте, Amper!во первых внимательно просмотрите все директивы для препроцессора
например #include <iostream>возможно у вас синтактическая ошибкапроверте правильность написания директивы
Ответ отправил: Иванов Игорь Михайлович (статус: 1-ый класс)
Ответ отправлен: 31.07.2006, 18:28


Вопрос № 50.500
Здравствуйте. Дан массив из 6-ти чисел. Мне нужно проверить чтобы среди них не было более 2-х идущих подряд(2 можно), т.е 1,2,10,20,30,40 - можно, а если 1,2,3,10,20,30 - уже нельзя. Думал, думал сам, как это можно сделать, но так ничего и не придумал. Может у кого идеи есть. Спасибо.
Отправлен: 29.07.2006, 04:07
Вопрос задал: Bamper (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Saw
Здравствуйте, Bamper!

Писал навскидку, просьба за ошибки ногами по голове не бить =) Но идея думаю будет ясна.

Приложение:

Ответ отправил: Saw (статус: 2-ой класс)
Ответ отправлен: 29.07.2006, 09:07

Отвечает: gitter
Здравствуйте, Bamper!
У меня, например, получилось так:
void main()
{
int ar1[]={1,2,3,10,20,30};
int ar2[]={1,2,10,20,30,40};
int len=6;

bool bFlag=false;
int repeat=0;
for (int i=1;i<len && !bFlag;i++)
{
if (ar1[i-1]==ar1[i]-1) repeat++;
else repeat=0;
if (repeat==2) bFlag=true;
}
if (bFlag) printf("в массиве есть идущие три подряд элемента");
else printf("в массиве нет идущих три подряд элемента");
}

Удачи!
Ответ отправил: gitter (статус: Студент)
Ответ отправлен: 29.07.2006, 10:34

Отвечает: Zitz
Здравствуйте, Bamper!

Я насочинял следующее:

Ну, во-первых, стандартное решение, что тут предложили, только в более компактном виде - MoreThen2. Заключается в том, что вводим флаг повторяемости.

Сразу бросается в глаза, то что его можно модернизировать убрав лишнюю переменную (этот самый флаг) в итоге получается MoreThen2Ext. Да плюс к тому она при худшем стечении обстоятельств, цикл прогоняет меньше на один раз. Смысл в следующем - если два последующих числа различаются между собой на один и в первые два на один, то это три идущих числа подряд.

Ну и третий вариант - модернизированный второй. Тоже самое, только если вторые два числа не идут подряд, то можно перепрыгнуть через число, т.к. они точно не идут подряд... %) Ну и соответственно данный вариант, работает быстрее или также как предыдущие.

Ну а если нужно не универсальное решение, а решение только для массива из шести чисел, то можно вообще без цикла обойтись - MoreThen2simple. Его конечно тоже можно упростить...

Приложение:

---------
Успех неизбежен + Думать вообще полезно + Чем сейчас, тем лучше

Ответ отправил: Zitz (статус: Студент)
Ответ отправлен: 29.07.2006, 15:05


Вопрос № 50.510
Здравствуйте! Если возможно, пришлите мне код любой sis-овской игрушки для смартфонов. Слышал что они пишуться на С++, очень хочется научиться их писать, но не знаю, с чего начать!
Отправлен: 29.07.2006, 11:07
Вопрос задал: Boga (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Saw
Здравствуйте, Boga!

Вот ссылка http://www.mobilab.ru/articles/index2.php?cat=1 думаю найдешь там много интересного для себя.
Ответ отправил: Saw (статус: 2-ой класс)
Ответ отправлен: 29.07.2006, 11:16
Оценка за ответ: 5
Комментарий оценки:
Супер, просто класс!!!! Действительно, это очень полезная и интересная информация! Спасибо большое!


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.35 от 27.07.2006
Яндекс Rambler's Top100

В избранное