Нужна помощь

  • Автор темы Ҹ
  • Дата начала
Статус
Закрыто для дальнейших ответов.
Ҹ

Ҹ

Гость
#1
Я вот начал делать программу, и тут такое задание,я ещё как бы эту тему не проходил, мне нужна ваша, помощь,начал делать,дали курсовую :
начал делать программу, и мне нужна ваша помощь, мне нужно сделать такие действия в программе:
там нужно удалить все пробелы в текстовом файле, все комменты /* и //, кроме тех которые заданы специальным ключом коммандной строки.
Коммандная строка программы:
имя_программа[-p prefix] [-in file] [-list file] [-out file]
Ключ -р (если он есть) задёт префикс prefix комментария, который должен оставаться в входном файле (например, -p/*-comp означает оставить комменты, которые начинаются с /*-comp-)ж
Ключ -in (если он есть) задаёт входной файл или файлы (при использовании шаблона имён), которые идут сразу после ключа через пропуск;
Ключ -list (если он есть) задаёт текстовый файл, который идёт сразу после ключа черз пропуск, со списком спецификаций входных файлов (одна строка - одна спецификация файла);
Ключ -out (если он есть) задаёт префикс имени файла/ов результата (тоесть имени выходного файла происходит от имени входного файла лописыванием префикса);
если ключ неуказан, то префиксом по умолчанию брать символ ~.

#include <stdlib.h>
#include <stdio.h>
int main(void)

{
FILE *fp;
FILE *fopen(const char *filename, const char *mode);
int fputc(int c,FILE *fp);
char *fgets(char *str, int n,FILE *fp);
int fprintf(FILE *fp, char *fmt,...);
char ch,filename[40], mode[5];
int count;

while(1)
{

if((fp = fopen("INPUT.TXT", "a+")) != NULL)
{
fprintf(stderr,"Error opening file.");
exit(1);

}
printf("\nImmediately after opening, position = %ld", ftell(fp));

//printf("\nSuccessfull opening %s in mode %s.\n", filename, mode);
fclose(fp);
if((ch = getc(stdin))=='x')
break;


}

//fprintf(stderr, "\nError opening file %s in mode %s.\n", filename, mode);
{
int count;
system("PAUSE");
return 0;
}


Тут вот исходник кода, но он на С не работает, там одна часть написана на PHP
<?
$string="Здесь много лишних пробелов!";
$string=ereg_replace(" +"," ",$string);
echo $string;
?>

С

FILE * fIn = fopen("d:\\1.hex", "r");
int ch;
std::string s;
while (EOF != (ch = fgetc(fIn)))
{
s += (char) ch;
}

Помогите доделать программу.
Заранее благодарен
 
Статус
Закрыто для дальнейших ответов.