On Sun, Mar 14, 2010 at 10:21:54AM +0200, globus wrote:
> 
> Писал примитивную програмку на Си, курсач для знакомой, но это не важно. Есть
> там кусок кода, который читает записи из файла: первая строка -- количество
> записей, последующие -- собственно "полезные" записи.
> 
> Вот кусок кода:
> 
>       size_t n /*= 0*/;
>       /* тут пропущены проверки переданных в ф-ю параметров */
>       fscanf(f, "%u", &n);
> printf("n==%u\n", n); /* для отладки */
>       if ((n > K_MAX_ITEMS) || (n == 0))
>       {
> printf("ERROR: n==%u\n", n); /* тжс */
>               *error = K_BAD_SIZE;
>               goto quit;
>       }
> 
>       if ((stab = malloc(n * sizeof(Stab))) == NULL)

[skipped]

> Виноват ли gcc-4.3.real (Debian 4.3.2-1.1) 4.3.2, или что-то другое?

Виноват программист, не понимающий разницы между unsigned int и size_t.

-- 
Stanislav


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Ответить