Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: использование функции strrchr  (Прочитано 12333 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Роман1
Гость
« : 26-02-2007 12:23 » 

Программа (пример из книги) с использованием функции strrchr в VC++ (не бета) компилируется нормально, но при отладке,  когда доходит до нее, требует файл strrchr.asm. В хэдере эта функция объявлена как extern и inline. Принцип то понятен, пробовал разные режимы компилятора, все равно не идет. Подскажите, что нужно сделать? Искать этот файл или что-то подключить в студии? (извините, если вопрос глупый)
« Последнее редактирование: 26-02-2007 12:25 от Роман1 » Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #1 : 26-02-2007 13:22 » 

Укажи пути к ресурсам - где конкретно это делается - зависит от версии студии. Ну и конечно асм исходники тоже должны там быть.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
npak
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 27-02-2007 09:29 » 

А зачем тебе нужно отладчиком залезать в функцию strrchr? Это функция из библиотеки языка С, она уже отлажена и должна работать нормально.

Если тебе интересно, как она реализована программистами Майкрософта, то посмотри исходники библиотеки - они поставляются вместе с Visual Studio.
Записан

UniTesK -- индустриальная технология надежного тестирования.

http://www.unitesk.com/ru/
Роман1
Гость
« Ответ #3 : 27-02-2007 13:28 » 

npak, да я не залезаю никуда специально отладчиком. При пошаговом выполнении программы (F11) происходит остановка с надписью, в общем, нет файла strrchr.asm. Его вообще в моем компьютере нет (смотрел через поиск). 
Записан
Роман1
Гость
« Ответ #4 : 27-02-2007 13:29 » 

Джон, У меня, вроде, исходника strrchr.asm нет
Записан
npak
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 27-02-2007 13:56 » 

и не нужно.  На библиотечных функциях надо жать F10 (Step Over), потому что ничего значимого для поиска ошибки в программе там не найдётся. 

Если жить невмоготу без strrchr.asm, то нужно установить исходники библиотеки С (это опция инсталлятора Visual Studio).
Записан

UniTesK -- индустриальная технология надежного тестирования.

http://www.unitesk.com/ru/
Роман1
Гость
« Ответ #6 : 27-02-2007 14:05 » 

npak,
Насчет исходников понятно, попробую установить. Жить, тоже, конечно, можно, но хочется хотя бы чужую прогу запустить перед тем как что-то самому писать. И еще, подскажи пож, что за штуковина такая в студии упоминается - source server. По справке, вроде, предназначена для получения недостающих исходных кодов. Так ли это и как пользоваться?
Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #7 : 27-02-2007 14:17 » 

Джон, У меня, вроде, исходника strrchr.asm нет

Хм... странно. У меня стоит три студии 6, .NET 2003 и  2005 и в каждой он есть.

STRRCHR.ASM   C:\Programme\Microsoft Visual Studio\VC98\CRT\SRC\Intel
strrchr.asm   C:\Programme\Microsoft Visual Studio .NET 2003\Vc7\crt\src\intel
strrchr.asm   C:\Programme\Microsoft Visual Studio 8\VC\crt\src\intel

Именно эти пути и должны быть прописаны. Ессно ты увидишь только асм код. Если тебе это поможет.
А в силу
да я не залезаю никуда специально отладчиком.

и делать там нечего. Тут поддержу npak. Хотя с этим вы уже разобрались.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Роман1
Гость
« Ответ #8 : 27-02-2007 14:35 » 

Всем спасибо. Буду разбираться.
Записан
Роман1
Гость
« Ответ #9 : 01-03-2007 06:38 » 

Джон, еще раз вынужден обращаться. При переустановке студии эти файлы не появились. Не знаю, то ли из-за того, что студия бесплатная, скачанная с microsoft, то ли надо ее зарегистрировать и скачать обновления. Если файлы asm одинаковы, то скинь, пож, их для VC++ 2005 Express на fialka1974@yandex.ru Заранее спасибо.
Записан
npak
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #10 : 01-03-2007 09:15 » 

Роман, какая у тебя студия?

при установке Visual Studio 2005 опция Language Tools->Visual C++->Visual C++ Run-Time Libraries->Visual C++ CRT Source Code

В инсталляторе шестой студии см. опцию Microsoft Visual C++ 6.0->VC++ Runtime Libraries->CRT Source Code
Записан

UniTesK -- индустриальная технология надежного тестирования.

http://www.unitesk.com/ru/
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #11 : 01-03-2007 09:36 » 

Экспресс у меня не стоит. Только Team Edition для SD

Держи тут. Хотя ИМХО ты что-то не то делаешь. Не нужно оно тебе.  А черт его знает...

* Strrchr.zip (0.95 Кб - загружено 654 раз.)
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Роман1
Гость
« Ответ #12 : 01-03-2007 09:56 » 

Видимо нужно как-то выкурить эту студию полностью из системы, чтобы она при новой загрузке опять запрашивала подробности установки. Я удалял и так и этак, но пока не получается. Все равно новая установка идет быстро и без церемоний. просто устанавливается VC++ 2005 Express. Ну ладно, хватит доставать всех нелепыми вопросами, дальше, надеюсь, разбирусь.Еще раз всем спасибо.
Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #13 : 01-03-2007 10:09 » 

Роман1,  format c:\ должен помочь. Ага На такие случаи делаются имаджи - переустановка занимает 5-10 минут.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
npak
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #14 : 01-03-2007 11:13 » 

В Express нет исходников CRT, см табличку на сайте майкрософт

http://msdn2.microsoft.com/en-us/library/hs24szh9(VS.80).aspx
Записан

UniTesK -- индустриальная технология надежного тестирования.

http://www.unitesk.com/ru/
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines