Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2014, 16:35   #1
xameleon48
Пользователь
 
Регистрация: 03.06.2014
Сообщений: 15
По умолчанию Программа компилируется но не запускается Си

Программа должна считывать из input строку и менять там слова на числа, но при запуске появляется ошибка и output пустой
Появляется ошибка
Debug Assertion Failed. Expression (stream !=NULL)
File: f:\dd\vctools/crty_bld/self_x86\crt\src\fclose.c
Line 47
Пользуюсь Visual C++2008
как я понял ругается на эти куски , весь код не влез сюда
залил на http://pastebin.com/SUjcJCxn
Код:
void pload_lists()
{
    std::string line="";

    char fline[255];
    FILE* f = fopen(file_replace_list,"r");



}
void preplace_strings()
{
    char fline[255];
    std::string line;
    long small_num,big_num;
    long sum, small_sum, res;
    int i,b;
    std::string temp;
 
    FILE* f = fopen(file_data,"r");
    FILE* fo = fopen(file_output,"w");
    sum=0;
    small_sum=0;
    while (!feof(f))
 
}
xameleon48 вне форума Ответить с цитированием
Старый 03.06.2014, 16:52   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А файлы исходные где лежат?
Выложить их можешь?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.06.2014, 16:55   #3
xameleon48
Пользователь
 
Регистрация: 03.06.2014
Сообщений: 15
По умолчанию

file_replace_list это файл со значениями замены словесных выражений в числовой вид
xameleon48 вне форума Ответить с цитированием
Старый 03.06.2014, 17:05   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Уже понял. Выложи все трифайла сюда.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.06.2014, 17:08   #5
xameleon48
Пользователь
 
Регистрация: 03.06.2014
Сообщений: 15
По умолчанию

replace.ini не загружается сюда
в нем написано
[small]
два 2
три 3

output не создается из за ошибки
Вложения
Тип файла: txt input.txt (20 байт, 117 просмотров)
xameleon48 вне форума Ответить с цитированием
Старый 03.06.2014, 17:23   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Протестил на файлах.
Получил консоль:
Цитата:
Ац3 1634562907 pload_curr_list
два 2
три 3яShall we replace valuta with short names?
Что вводить дальше?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.06.2014, 17:30   #7
xameleon48
Пользователь
 
Регистрация: 03.06.2014
Сообщений: 15
По умолчанию

n и должен создаться файл output с замененными словами на числа
xameleon48 вне форума Ответить с цитированием
Старый 03.06.2014, 17:40   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А можно поинтересоваться заданием?
Просто весь этот огромнейший код мне кажется весьма надутым, и уверен на 100% что его можно упростить до неузнаваемости.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.06.2014, 17:43   #9
xameleon48
Пользователь
 
Регистрация: 03.06.2014
Сообщений: 15
По умолчанию

Задание:В исходном файле содержится некоторый текст. Разработать программу, которая заменяет все словесные записи денежных сумм числами. При этом возможны следующие варианты замены:
- заменять/не заменять «руб.» на «рублей»;
- заменять/не заменять «коп.» на «копеек».
xameleon48 вне форума Ответить с цитированием
Старый 03.06.2014, 18:12   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Дай угадаю:
Код:
// sdsd.cpp: определяет точку входа для консольного приложения.
//

#include "stdafx.h"
#include <fstream>
#include <string>
#include <iostream>
#include <Windows.h>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	const int n=3;
	string a[n][2]={{"два","2"},{"один","1"},{"рубля","руб."}};
	ifstream f("d:\\1\\input.txt ");
	string s;
SetConsoleOutputCP(1251);
	while(!f.eof()){
		f>>s;
		for(int i=0;i<n;i++){
			for(int j=s.find(a[i][0]);j!=-1;j=s.find(a[i][0])) 
				s=s.replace(j,a[i][0].length(),a[i][1]);
		}
		cout<<s<<' ';
	}
	cin.get();
	return 0;
}
Похоже?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа компилируется, но не отображается volchek3 Общие вопросы Delphi 2 09.07.2012 01:48
Программа компилируется, но не работает maziLa Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 17.07.2009 11:24
Задача в Паскале компилируется но не запускается(((...Помогите пожалуйста,на завтра нужно! zhavadik Паскаль, Turbo Pascal, PascalABC.NET 2 07.04.2009 00:44
Не компилируется программа kiloruble Общие вопросы C/C++ 11 17.11.2008 20:51
Не компилируется программа VladimirVB Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 14.10.2008 23:22