0 / 0 / 0
Регистрация: 24.10.2019
Сообщений: 29

Не работает fputc

20.11.2020, 13:48. Показов 1212. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
 
int main(int argc, char *argv[]){
 
    FILE *fp = fopen(argv[1], "r+");
    if( fp == NULL ){
        fprintf(stderr, "No such file or directory: %s\n", argv[1]);
        return 1;
    }
    char count = 5;
    printf("COUNT %d\n", count);
    fputc((int)count, fp);
    fclose(fp);
 
return 0;
}
Может я не понимаю как работает fputc но у меня не записывается число в файл, вместо него просто какой-то непонятный символ
Изображения
 
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.11.2020, 13:48
Ответы с готовыми решениями:

Не работает одновременно fputc, fgetc
В спецификациях к функциям на cplusplus.com написано, что после добавления или чтения символа из файла, внутренняя позиция в файле...

fputc не работает, укажите где в програмке ошибка
В С создается файл и выполняется над ним работа. Создается файл, вводится в него текст, где слова разделены ' ' (пробелом), линии ':' (...

функции fgetc()/fputc
Помогите с задачей, эта тема просто в голову никак не лезет. Используя функции fgetc/fputc, ввести с клавиатуры свои инициалы латинскими...

7
599 / 421 / 137
Регистрация: 02.10.2008
Сообщений: 1,798
Записей в блоге: 1
20.11.2020, 15:13
Всё правильно работает.
У тебя записался символ с ASCII-кодом 5.
Напиши
C
1
char count = '5';
и будет в файле пятёрка, а не символ с кодом 5
0
0 / 0 / 0
Регистрация: 24.10.2019
Сообщений: 29
20.11.2020, 15:21  [ТС]
А как это реализовать если count это счетчик в цикле?
C++
1
2
3
4
5
for(int i = 0; i <= txt_len; i++){
        if(txt[i] == 'a'){
            count++;
        }
}
0
599 / 421 / 137
Регистрация: 02.10.2008
Сообщений: 1,798
Записей в блоге: 1
20.11.2020, 15:48
А если в массиве txt будет 256 символов 'a' вы их тоже в char count будете подсчитывать?
И почему такая привязанность к fputc - условие задачи?
0
0 / 0 / 0
Регистрация: 24.10.2019
Сообщений: 29
20.11.2020, 15:51  [ТС]
Там максимум будет 10 символов, это задание и допускается использование только fgetc и fputc, если бы можно было использовать другие функции, я бы уже сделал задание
0
599 / 421 / 137
Регистрация: 02.10.2008
Сообщений: 1,798
Записей в блоге: 1
20.11.2020, 15:59
Вам надо преобразовать число_символов, которое насчитали в цикле в строку и вывести символы из строки по одному с помощью fputc.
Я не зря привёл ссылку на ASCII-таблицу в своём первом ответе. Посмотрите какой код имеет символ '5'.
0
 Аватар для peter_irich
368 / 224 / 53
Регистрация: 18.10.2017
Сообщений: 2,393
20.11.2020, 23:23
drfaust, я бы предпочёл число преобразовать в символы, проще по очереди,
т.к. надо выводить через fputc.
0
599 / 421 / 137
Регистрация: 02.10.2008
Сообщений: 1,798
Записей в блоге: 1
20.11.2020, 23:33
Ну так в чём проблема? Если число гарантировано влазит в десятки, то сперва выводим целочисленное деление на 10 (если ноль - выводим пробел), а затем остаток от деления того же числа на 10
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.11.2020, 23:33
Помогаю со студенческими работами здесь

Fputc() записывает лишний байт
Тут очень странное поведение функции fputc(). Вот программа #define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; using...

Ошибка: 'fputc' : cannot convert parameter 1 from 'char *' to 'int'
Помогите разобраться Я начинающий программист, не судите строго:- int _tmain() { char *a; a=&quot;TTTT+&quot;; FILE *fp; ...

вопрос к спецам: почему функция fputc при работе не устанавливает счётчик файла в конец?
Друзья! То есть написана программка. С клавы вводится ОДИН символ и он запихивается в файл. А потом этот файл с помощью функции fread...

Приложение работает в Debug, странно работает в Release и не работает при билде
Действия выполняются на эмуляторе Pixel 2. Android 9.0. Если я запускаю приложение с конфигурацией Debug, то всё в порядке. При запуске же...

Не работает клавиатура на ноутбуке, внешняя клавиатура частично не работает, экранная не работает
Добрый день! Не работает клавиатура на ноутбуке, внешняя клавиатура частично не работает, экранная не работает. Результат не могу ввести...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru