Как считать символы char функцией scanf() в цикле?
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main()
{
FILE *f;
int FileSize, byte;
setlocale(LC_ALL,"rus");
f=fopen("C:\\Users\\...\\myfile.txt", "r");
fseek(f, 0, SEEK_END);
FileSize= ftell(f);
fclose(f);
char buffer[FileSize];
printf("Введите байты, для перезатирания\n");
do{
//scanf("%c", &byte);
// "НУЖНО СЧИТАТЬ СИМВОЛ char И ИМ ПЕРЕЗАПИСАТЬ ФАЙЛ СТОЛЬКО РАЗ, //
// СКОЛЬКО РАЗ БЫЛ ВВЕДЕН СИМВОЛ char" //
for (int i=0; i<FileSize; i++){
buffer[i]=byte;
}
f=fopen("C:\\Users\\...\\myfile.txt", "w");
fwrite(buffer, sizeof(char), FileSize, f);
fclose(f);
}while (byte!='\n');
return 0;
}
Ответы (1 шт):
Автор решения: DSuhoi
→ Ссылка
Для ввода/вывода символов в функции scanf/printf используйте команду форматирования %c. Список команд форматирования.
char symb;
do{ //начало цикла
scanf("%c", &symb);
printf("Char: %c\n", symb);
}while(symb!='0');