У меня есть файл, который я хочу прочитать и распечатать на экране. Я использую XCode в качестве моей IDE. Вот мой код ...fread() помещает странные вещи в массив символов
fp=fopen(x, "r");
char content[102];
fread(content, 1, 100, fp);
printf("%s\n", content);
Содержимое файла: "Bacon!" Распечатывается \254\226\325k\254\226\234
.
У меня есть Google Googled на всем протяжении этого ответа, но документация для ввода/вывода файлов в C кажется редкой, и мало что там не очень ясно. (Мне по крайней мере ...)
EDIT: Я переключился на чтение, а не на добавление и чтение, и переключил два средних аргумента в fread()
. Теперь он печатает Bacon!\320H\320
Что это значит? Вещи, как в номере с обратной косой чертой номер или буква. Я также переключил способ распечатать его, как было предложено.
Что в файле? – Dani
Никогда не используйте строку формата, считываемую из любого места!. В этом случае используйте 'puts()' или 'printf ("% s ", content)' – ydroneaud
@ Дани, вопрос говорит вам, что это «Бэкон!». Вы сомневались в силе бекона? – CoffeeRain