Редактировать: уточнить, так как кто-то попытался отредактировать это сообщение, я имею в виду, что vim отображает предупреждение, gcc нет.Vim отображает предупреждение, хотя код компилируется правильно
У меня есть программа, которая компилируется не правильно предупреждений со следующей командной строкой:
gcc -o stetest -pedantic -Wall strerrortest.c
Однако, ВИМ предупреждает меня, что у меня есть неявное объявление strerror на линии, указанной в приведенной ниже MWE. Это что-то, о чем я должен беспокоиться, или тот факт, что он правильно компилируется? Должен ли я писать прототип, чтобы предупредить его?
Это предупреждение
implicit declaration of function 'strerror' [-Wimplicit-function-declaration]
format '%s' expects argument of type 'char *', but argument 3 has type 'int' [-Wformat=]
Источник ниже:
// strerrortest.c
#define _GNU_SOURCE
#include <stdio.h>
#include <string.h>
int
main(int argc, char ** argv)
{
fprintf(stderr,"%s\n",strerror(1));
// Vim complains about an implicit declaration of strerror here.
return 0;
}
Система Ubuntu 15.04.
ВИМ предупреждает вас ?? показать предупреждение plz .. – Haris
@Haris, добавлено предупреждение. – jgon
Его компиляция без каких-либо предупреждений в моей машине, вы компилируете это в Linux-машине? – Haris