различия в размере двух - PullRequest
0 голосов
/ 20 июня 2011

У меня есть каталог, который содержит 4 файла, а именно 1.c, 2.c, 3.c и 4.ci, я читаю имена файлов, присутствующих в этом каталоге, с помощью системного вызова readdir, который возвращает некоторую структурную переменную, а именно myStruct.

2) У меня есть другой открытый файл, а именно файл .txt, который содержит имена файлов, такие как 1.c, 2.c, 3.c, 4.c и т. Д. *

Мое намерение состоит в том, чтобы сравнить файлы, присутствующие в .txt, с файлами, представленными в каталоге (достаточно сравнения имен, не проверяя его содержимого).

, когда я делаю сравнение, даже если именаприсутствующие в каталоге совпадают с теми, которые присутствуют в файле a.txt, они не показывают равное сравнение, а затем, когда я напечатал длину, они неравны.

Может кто-нибудь, пожалуйста, сообщите мне любое решение этой проблемы

спасибо, Мэдди

1 Ответ

1 голос
/ 20 июня 2011

Когда вы читаете из файла, в конце прочитанной строки появляется дополнительный нулевой символ, поэтому сравнение покажет, что они неравны. Поэтому после прочтения строки обрежьте \n и попробуйте.

EDIT

В этом обсуждении рассказывается о том, как обрезать пробелы в строке, используя C - Безболезненный способ обрезать начальные / конечные пробелы в C?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...