[Comm] warnings

Andrey Rahmatullin =?iso-8859-1?q?wrar_=CE=C1_altlinux=2Eru?=
Пн Июн 28 13:40:40 MSD 2004


On Mon, Jun 28, 2004 at 04:10:20PM +0700, php-coder wrote:
>  Извниняюсь, что пишу сюда, но больше не знаю где спросить.
Это Ваша прога или чужая? Еслм чужая, но компилится и работает -
нормально.

>  functions.inc.h:100: warning: implicit declaration of function `getline'
>  100 getline(&buff_pointer, &buff_length, stdin);
Ф-я getline объявлена в файле stdio.h, но этот файл не включен в текущий
исходник. Допишите в него #include <stdio.h>

>  functions.inc.h:109: warning: assignment makes integer from pointer without a cast
>  109 tracks_names_array[i] = buff_pointer;
>  118 tracks_names_array[i] = NULL;
Гм. tracks_names_array имеет тип char*, тогда tracks_names_array[i] имеет
тип char. Но ему присваивается значение типа "указатель" (неважно на что).
Это очень странно.

>  main.c:39: warning: pointer targets in passing arg 1 of `strlen' differ in signedness
>  39 printf("Вы ввели: %s\nДлина строки: %d\n", tracks_names_array[i], strlen(tracks_names_array[i]));

В совокупности c предыдущим варнингом всё понятно. tracks_names_array -
это массив символов (его тип - char*), т.е. строка. Но по задумке это
массив строк, так? Это видно, в частности из того, что
tracks_names_array[i] по задумке явно строка (ей присваивается
значение-указатель, и от нее берется strlen).
Тогда tracks_names_array надо объявить как char**. 

-- 
WBR, wRAR (ALT Linux Team)

> Прошу maintainer'ов принять меры.
> QA Robot вам об этом обязательно скоро напомнит. :)
Только не надо угроз :-)
		-- mike in devel@
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/community/attachments/20040628/49de694a/attachment-0003.bin>


Подробная информация о списке рассылки community