Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Що це він від мене хоче, а?


Автор: Cardholder 28.3.2004, 19:29

 ! 
chipset
Тегi code теж працюють.
chipset.

 Є така прога:

Код

#include <iostream>
#include <fstream>
using namespace std; 

void main(int argc, char *argv[]) 
{
    if(argc!=2) {
        cout<<"Enter a file name\n";
    }

ofstream out(argv[1]);
if(!out) cout<<"Error while opening file\n";
char str[80];
cout<<"Enter strings in file. For end of file, pleace enter $\n";
do{
    cout<<":";
    cin>>str;
    out<<str<<endl;
}while (*str!='$');
out.close();
}

Компіляція без помарок, але після запуску видає:

Debug assertion failed!
Program: ...\fileoutput.exe
File: fopen.c
Line: 54

Expression: file!=NULL


Я відчуваю, що справа у цьому: int argc, char *argv[]
Але що ж робити? Я користуюсь Visual C++.Net 


 ! 
MAKCim
Модератор: Название темы должно отражать ее суть!

Автор: Elfet 28.3.2004, 19:37
Мая твая не понимать! smile.gif

Автор: Stalk 28.3.2004, 21:42
Есть такая прога:
...
Компиляция без ошибок, но после запуска выдает:
...
Я чуствую, что дело в этом: int argc, char *argv[]
Но что же делать? Я пользуюсь Visual c++.Net

З.Ы. Я в переводчики не записывался! Cardholder, неужели в твоей школе не было уроков русского языка(или ты их прогуливалsmile.gif?


Да, кстати тема называется: 'что это он от меня хочет, а? Закомпилял, запустил, а тут ошибка'

Автор: Borisff2003 29.3.2004, 06:19
Цитата

Код

if(argc!=2) {
cout<<"Enter a file name\n";
}

ofstream out(argv[1]);



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

Так сделай, хоть выходить будет :-)
Код

if(argc!=2) {
  cout<<"Enter a file name\n";
  return 1;
}

Автор: smartov 30.5.2008, 17:27

M
smartov
Cardholder,
user posted image пользуйтесь кнопкой "Код" и по-возможности пишите по-русски или по-английски.
user posted image користуйтеся кнопкою "Код" та по-можливості пишіть російською чи англійською

Автор: bronislav 30.5.2008, 18:29
user posted image Вот так - работает
user posted image Ось так - працює
Код

#include <iostream>
#include <fstream>
#include <exception>

int main( int argc, char *argv[] ) 
{
    if( argc != 2 )
    {
        std::cout << "Enter a file name\n";
        return 1;
    }
    try
    {
        std::ofstream out( argv[1] );
        char* str = new char [80];
        std::cout << "Enter strings in file. For end of file, pleace enter $" << std::endl;
        do
        {
            std::cout << ":";
            std::cin >> str;
            out << str << std::endl;
        }
        while( str[0] != '$' );
        out.close();
    }
    catch( std::exception e )
    {
        std::cerr << e.what() << std::endl;
    }
    return 0;
}


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)