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

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


Информационный Канал Subscribe.Ru


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

Выпуск № 277
от 06.06.2003, 23:20

Администратор:
Имя: Nick.Box
URL: Информационный ресурс
ICQ: 365124
[censored], [censored]
О рассылке:
Задано вопросов: 840
Отправлено ответов: 1939
Активность: 230.8 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

BOLT
Статус: Профессиональный
Общий рейтинг: 171.72
URL: Начинающему программитсу: софт, примеры, документация, Assembler, C/C++.
[Подробней >>]
Vdr
Статус: Доверительный
Общий рейтинг: 111.6
[Подробней >>]
Yuri Gordienko
Статус: Опытный
Общий рейтинг: 115.9
[Подробней >>]
 
Avl2k
Статус: Опытный
Общий рейтинг: 125.72
[Подробней >>]
Morgion
Статус: Доверительный
Общий рейтинг: 109.46
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 828. Я пару дней назад задавал этот вопрос, но ответов не получил, т.к сдохло мыло.Попрошу ответить ещё р... (ответов: 5)
Вопрос № 830. Здравствуйте уважаемые эксперты. Это снова я. Спасибо всем кто откликнулся на вопрос №806. Вот что п... (ответов: 2)

Вопросов: 2, ответов: 7


 Вопрос № 828

Я пару дней назад задавал этот вопрос, но ответов не получил, т.к сдохло мыло.Попрошу ответить ещё раз и не серчать... :))
А вопрос звучал так: дайте ссылки на сайты, где можно скачать не очень сложный компилятор для C++, если тока тока начал изучать язык этот.



Вопрос отправлен: 03.06.2003, 14:54
Отправитель: edren_baton

[Следующий вопрос >>] [Список вопросов]

Отвечает BOLT

Приветствую Вас, edren_baton! :з)
Отвечаю еще раз.Конечно можно скачать пару стареньких компиляторов с http://www.borland.com, но я тебе советую купить диск за 50 рубликов и не парить себе мозги.А то будешь качать бесконечно(если у тебя, конечно, не выделенка).
Да прибудет с тобой Велика Сила!

Ответ отправлен: 04.06.2003, 11:58
Отправитель: BOLT


Отвечает Vdr

Доброе время суток, edren_baton!
Как я уже говорил - многовато качать будет, легче диск купить...

Ответ отправлен: 04.06.2003, 10:21
Отправитель: Vdr


Отвечает Yuri Gordienko

Приветствую Вас, edren_baton!
http://www.bloodshed.net

Ответ отправлен: 03.06.2003, 15:31
Отправитель: Yuri Gordienko


Отвечает Avl2k

Приветствую Вас, edren_baton!
Если хочется именно скачать, то могу предложить древний BC++ 3.1 (под DOS) - для начала ИМХО достаточно:
качайте здесь (17.2М) или здесь (19.4M).
С уважением, Avl2k.


Ответ отправлен: 03.06.2003, 18:15
Отправитель: Avl2k


Отвечает Morgion

Приветствую Вас, edren_baton!
http://bloodshed.net/dev/devcpp.html
http://www.cs.virginia.edu/~lcc-win32/lccwin32.exe
http://protools.cjb.net/

Приложение:

Ответ отправлен: 03.06.2003, 20:56
Отправитель: Morgion


 Вопрос № 830

Здравствуйте уважаемые эксперты.
Это снова я. Спасибо всем кто откликнулся на вопрос №806. Вот что получилось, хотя это и не удаление каталога, а просто просмотр всего содержания с выводом полного пути файлов.
Вот функция:
==========================================================
int DeletD(char *dd) // указатель на путь(директорию),
//который высылается сюда из другой //подпрограммы.
{
int id=0,jd=0,dl=0,done=0;
char *temp;
char *mask;
struct find_t ffk;
temp=strdup(dd); //для файла
mask=strdup(dd); //для маски
strcat(mask,"\*.*");
strcat(temp,"\");
done = _dos_findfirst(temp,19,&ffk);
while (!done)
{
if(id>1){
strcat(temp,ffk.name); //сдесь //формируется
printf("%s ",temp); //полное
getch(); //имя
dl=strlen(temp)-strlen(ffk.name);//
for(jd=dl+1;jd temp[jd]=''; //удалается
} //имя файла:)
done =_dos_findnext(&ffk);
id++;
}
free(mask);
free(temp);
return 0;
}
======================================================
А после выполнения(разового), происходит зависание, и даже Ctrl+Pause не помагает(если только два раза подряд). После чего перезагрузка всей системы чтобы запустить программу эту опять. Вообще-то, если вовремя остановить выполнение, то выдаёт NULL POINTER ASSIGMENT, причём только после выполнения этого поиска и значение done=3 при повторном вызове?!
Подскажите где жучок.



Вопрос отправлен: 03.06.2003, 22:31
Отправитель: Michael

[Следующий вопрос >>] [Список вопросов]

Отвечает Yuri Gordienko

Доброе время суток, Michael!
strdup(dd) создает строку длиной strlen(dd)+1.
Далее ты делаешь strcat(mask,"\*.*"), т.е. уже явное переполнение длины буфера, далее опять добавляешь - вот и ошибка, - ты пишешь по нераспределенной памяти.
Решение: или выделяй malloc'ом заранее большой буфер или используй realloc
Успехов

Ответ отправлен: 04.06.2003, 10:24
Отправитель: Yuri Gordienko


Отвечает BOLT

Здравствуйте, Michael!
Я че-то не уловил, а где findnext()
Приведи, пожалуйста полный листинг функции!
Пока!

Ответ отправлен: 04.06.2003, 13:05
Отправитель: BOLT



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


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


Получить ответов:


 Выбор рассылки

Программисту
Assembler (36)
C / C++ (29)
Perl (6)
Builder / Delphi (17)
Pascal (30)
Basic / VBA (11)
Java / JavaScript (11)
PHP (7)
MySQL / MSSQL (6)
Пользователю
Windows 95/98/Me (37)
Windows NT/2000/XP (32)
"Железо" (26)
Поиск информации (14)
Администратору
Windows NT/2000/XP (14)
Linux / Unix (8)
Юристу
Гражданское право (5)
Семейное право (2)
Трудовое право (3)
КоАП (3)

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




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование


Яндекс цитирования
© 2001-2003 Россия, Москва. Авторское право: Калашников О.А.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное