Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Ilya Anfimov                         2:5020/400     25 Jun 2001  11:25:28
 To : Alexander S. Aganichev
 Subject : Re: bug in gcc
 -------------------------------------------------------------------------------- 
 
 On Sat, 23 Jun 2001 00:03:26 +0400, 
 Alexander S. Aganichev <Alexander.S.Aganichev@p19.f604.n5020.z2.fidonet.org> 
 wrote:
 
 >Ilya,
 >
 >Not so long ago (22 Jun 01) Ilya wrote to me:
 > >> OM> char *tra-la-la(unsigned long addr)
 > >> OM> {
 > >> OM> char sss;
 > >>          ^ * забыл
 > >> OM> sss=(char *)malloc(sizeof("123"));
 > >>
 > >> OM> sprintf(sss,"%03d",addr);
 > >>
 > >> OM> return (sss);
 > >> OM> }
 > >>
 > >> OM> И если я делаю так:
 > >>
 > >> OM> fprintf(fp, "%s, %s, %d", tra-la-la(10),tra-la-la(20),30);
 > >>
 > >> OM> То эта зараза мне выдает строку 010, 010, 30
 > >> Вообще-то тут за исключением указанной ошибки похоже всё правильно.
 > IA> Да? Значение, возвращаемое malloc() не проверяется, unsigned long
 > IA> он пытается распечатать в 4-х байтовый массив, да еще  с  помощью
 > IA> sprintf().
 >
 >Hу тогда ещё не проверяется значение, выдаваемое sprintf, 
 
 sprintf   ничего   интересного   не   возвращает.   При   обычном
 использовании.
 >не освобождается
 >память, 
 
 Ой, ..., я лопух. Hе заметил. 
 
 >неправильный тип в sprintf. Hо для данного конкретного случая эта
 
 Следствие первой.
 
 >программа будет работать. Ты сколько раз видел реально, чтобы программе,
 >которая всего 8 байт выделяет malloc'ом не давали памяти? ;)
 
 Я   видел   очень   разные   примитивные,  смешные  или  не очень
 ошибки, который становились очевидны после добавления   проверок.
 И   warning'ов.   Просто      до         этого          обсуждать
 ошибки       в компиляторе/библиотеках бессмысленно.
 
 >
 >Have a nice day wherever you are...
 >Alexander
 >
 
 --- ifmail v.2.15dev5
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 глюкавый gcc   Nikolai Preminin   20 Jun 2001 22:33:10 
 Re: глюкавый gcc   Ruslan Skripka   21 Jun 2001 00:00:21 
 Re: глюкавый gcc   yx   21 Jun 2001 06:23:49 
 глюкавый gcc   Nikolai Preminin   22 Jun 2001 23:14:40 
 Re: люкавый gcc   yx   23 Jun 2001 01:47:32 
 Re: люкавый gcc   Serge A. Suchkov   25 Jun 2001 12:30:21 
 Re: лукавый gcc   Bohdan Vlasyuk   26 Jun 2001 12:21:07 
 Re: люкавый gcc   Yuriy Kaminskiy   26 Jun 2001 14:50:39 
 Re: глюкавый gcc   Boris Tobotras   21 Jun 2001 08:51:49 
 глюкавый gcc   Vitty Kuznestsov   21 Jun 2001 12:04:22 
 Re: bug in gcc   Oleg Milantiev   21 Jun 2001 18:35:47 
 Re: bug in gcc   yx   21 Jun 2001 21:09:27 
 bug in gcc   Nikolai Preminin   22 Jun 2001 22:57:04 
 Re: bug in gcc   Antony Y. Bolotin   22 Jun 2001 21:50:36 
 Re: bug in gcc   Alexandre N. Safiullin   22 Jun 2001 15:51:43 
 bug in gcc   Alexander S Aganichev   21 Jun 2001 22:48:09 
 Re: bug in gcc   Ilya Anfimov   22 Jun 2001 21:02:00 
 bug in gcc   Alexander S Aganichev   23 Jun 2001 00:03:26 
 Re: bug in gcc   yx   24 Jun 2001 01:50:08 
 Re: bug in gcc   Ilya Anfimov   25 Jun 2001 11:25:28 
 bug in gcc   Alexander S Aganichev   25 Jun 2001 23:46:30 
 Re: bug in gcc   Antony Y. Bolotin   22 Jun 2001 20:39:48 
 Re: глюкавый gcc   Vitaly Lugovsky   27 Jun 2001 16:27:03 
Архивное /ru.linux/612035546c4a.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional