Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 24.10.2019
Сообщений: 29

Не работает fputc

20.11.2020, 13:48. Показов 1210. Ответов 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
367 / 223 / 53
Регистрация: 18.10.2017
Сообщений: 2,390
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
Ответ Создать тему
Новые блоги и статьи
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru