Форум программистов, компьютерный форум CyberForum.ru

fputc не работает, укажите где в програмке ошибка - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как запустить mdb - файл (Access) из программы С++ или VC++ http://www.cyberforum.ru/cpp-beginners/thread497677.html
При загрузке компьютера, программа, находящаяся в StartUp, читает из файла поле с датой. Если дата <= текущей, то запускается файл *.mdb
C++ ShellExecute - манипулирование окном программы. Как сделать? Я в своей программе использую ShellExecute - API-шую функцию, которая открывает файл программой, сопоставленной с этим расширением файла. Например, 123.txt она открывает его с помощью notepad.exe, и т.д. Создается окно. Вопрос в том, как получить его hwnd, чтобы манипулировать им? Конечно, можно перебрать все окна, но это решение мне представляется ненадежным и длинным. Можно ли это сделать... http://www.cyberforum.ru/cpp-beginners/thread497672.html
Запуск консольного приложения в фоновом режиме C++
Доброго времени суток У меня вопрос, как запустить консольное приложение в фоновом режиме, т.е. чтобы при двойном щелчке по приложению не открывался cmd.exe
Попытка получения запущенных процессов на удалённом компьютере C++
При попытке получить список запущенных процессов, прога завершается авариино. Под дебагом говорит что какие-то проблемы в переменной spServices. Может кто-нибудь подскажет где собака порылась? Вот код: try { TCHAR szServer; _bstr_t bstrServer; IWbemLocatorPtr spLocator;
C++ Можно ли с помощью хуков перехватывать вызовы функций из DLL? http://www.cyberforum.ru/cpp-beginners/thread497543.html
Привет народ! Для одного проекта ;) мне понадобилось перехватывать функцию, находящуюся в DLL (а точнее в kernel32.dll, т.е. WinAPI-функцию). Видел драйвер, скрывающий процесс, и еще кой-чего но все было написано на асме. Возможен ли перехват API-хи с помощью хуков?
C++ Изменение ключей реестра Windows Мне необходимо в реестре поменять IpAdress В пути к соотв. переменной реестра есть ключ AEF37A0A-E385-4BAD-B228-34FD29980B5C Я так понимаю - он генерится системой и различен для разных машин. Подскажите, пожалуйста, какие есть способы программно определить каков этот ключ для данной машины? Спасибо! подробнее

Показать сообщение отдельно
Hana
Сообщений: n/a

fputc не работает, укажите где в програмке ошибка - C++

06.08.2011, 02:59. Просмотров 1026. Ответов 3
Метки (Все метки)

В С создается файл и выполняется над ним работа. Создается файл, вводится в него текст, где слова разделены ' ' (пробелом), линии ':' ( двоеточием). В конце файла устанавливается '!'( воскл.знак). Нужно создать функцию в которую передается файл и символ, эта функция должна изменять первый символ каждой линии на символ который передали как параметр. В конце вывести содержимое файла в главной функции.
Програмку написала, все работает кроме fputc в функции которая должна изменять первый символ каждой строки на новый, переданный.она вставляет только первый... в следующие строки не вставляет.
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
void change(char *filename, char symbol)
{
FILE *file;
if( (file=fopen(filename,'r+')) == NULL )
{ cout<< 'Cant open file
';
getch();
exit (1);
}

char ch;
fputc(symbol,file);
fseek (file, 0, SEEK_CUR);

do
{ ch=fgetc(file);
if(ch==':')
{fputc(symbol,file);
fseek (file, 0, SEEK_CUR);
}
} while(ch!=EOF);

fclose(file);
}

void main()
{ char buffer[100],filename[300],ch;
cout << 'Enter the name of the file.If the file by that name already exists, itwill be overwritten.
';
cin>>filename;
FILE *file;

clrscr();
if( (file=fopen(filename,'w+')) == NULL )
{
cout << 'The file ''<<filename<<' 'was not opened
Press any key to continue.';
getch();//
exit(1);//
}

cout << 'Type a text or press 'Ctrl+Z ' to continue...
';
do
{ cin>>buffer;
fputs(buffer, file);

if(cin.get()=='
')
fputc (':', file); // line

else fputc (' ', file);

} while(cin.good());

fputc ('!', file);

fputc (EOF, file);
fclose(file);

change(filename,'@');

if( (file=fopen(filename,'r')) == NULL )
{
cout << 'Error while opening ''<<filename<<' ' for reading.
Press Enter to continue.';
exit(1);
}
else
{
do
{ fgets(buffer,100,file);
cout << buffer;
}while(!feof(file));

cout << '
Press Enter to Escape.';
getch();
fclose(file);
}
exit(1);

}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru