Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

Почему не работает интерактивный ввод - помогите!

Уважаемые господа (С++)-программеры,
здравствуйте!

Подскажите, пожалуйста, почему не работает следующий код:

#include <iostream>
#include <fstream>
#include <cmath>
#include <bitset.h>
#include <cstring>
using namespace std;

int main()
{
char *n_file;
cout << " INPUT up for processing of the file name: ";
cin >> n_file;

...

return 1;
}

То есть, описанный интерактивный ввод символов не появляется на экране ...?

--
Если Вы получили мое послание, то я был бы очень признателен Вам за отклик.

С уважением,
nick59 - <nick***@i*****.ru>.

Ответить   Thu, 13 Sep 2007 18:48:30 +0400 (#690694)

 

Ответы:

Здравствуйте !

Ошибка как минимум тут:

Память под буфер, в который будет производиться ввод
не выделена.

Ответить   Sat, 15 Sep 2007 23:23:08 +0400 (#691117)

 

Уважаемый господин Victor V. Vakchturov,

Подскажите, пожалуйста, а если добавить в код интерактива следующие строки:

#include <iostream>
#include <fstream>
#include <cmath>
#include <bitset.h>
#include <cstring>
using namespace std;

#define SIZE 255

int main()
{
...; // обьявления переменных кода

char *n_file;
n_file=(char *) malloc(SIZE);
cout << " INPUT up for processing of the file name: ";
cin >> n_file;
free(n_file);

ifstream fin(n_file); // открытие файла ввода <n_file>
ofstream fout("c-02_1b.txt"); // создание и открытие файла вывода <c-02_1b>

...; // продолжение тела кода

return 1;
}

То, описанный интерактивный ввод символьной строки (названия файла ввода) опять
же не
появляется на экране ...?
Выполнение .exe-файла заканчивается не начавшись, т.е. на миг появляется пустой
экран и сразу же исчезает,
не доводя дело до интерактива.
Что в этом коде может не доставать, чтоб он (код интерактивного ввода) заработал
...?

Вы сказали, что в коде ве выделена память под буфер, в который должен проводиться
ввод.
Я ввел и "malloc()" и "free()", но никаких позитивных сдвигов. Что же теперь
дальше можно
предпринять ...?

Пока я не перещел на "классы" и плохо их знаю (аналогичная ситуация у меня и
с "указателями").

Поэтому, помогите, пожалуйста с этой задачкой "ввода/вывода в поточном режиме".

--
Если Вы получили мое послание, то я был бы очень признателен Вам за отклик.

С уважением,
nick59 - <nick***@i*****.ru>.

-----Original MessageFrom: "Victor V. Vakchturov" <forum-moderat***@m*****.ru>
To: "comp.soft.prog.prog" <nick***@i*****.ru> (1735245)

Ответить   Tue, 18 Sep 2007 18:48:06 +0400 (#691670)

 

Здравствуйте !

Ужос ! За что же Вы меня так поименовали ?

...

Ну, "с налету" можно сказать одно. Память убивается при помощи
free, а затем используется ifstream fin(n_file);
Убивать надо тогда, когда больше не нужна. Т.е. как минимум
после

Да, еще. Отрезайте, пожалуйста, "хвосты" у писем в лист - все лишнее,
особенно статистику, подписи, и.т.д.

Ответить   Wed, 19 Sep 2007 02:13:01 +0400 (#691773)