Я пытаюсь определить, какие строки моего открытого текста начинаются с «linePrefix». Используя вышеприведенный код, даже если есть совпадение, strcmp
никогда не возвращает 0. Кто-нибудь знает, где я сбой?Получить строки файла, начинающегося с префикса
const char PREFIX[] = {"linePrefix"};
FILE *fp;
char *line = NULL;
char *aux = NULL;
aux = (char *) malloc(16);
size_t len = 0;
ssize_t read;
char path[] = {/*path*/};
fp = fopen(path, "r");
while ((read = getline(&line, &len, fp)) != -1) {
strncpy(aux, line, 15);
printf("strcmp: %i\n, strcmp(aux, PREFIX));
}
[Пожалуйста, не бросайте результат 'таНос()'] (http://stackoverflow.com/a/605858/3233393). – Quentin