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

Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело??? - C++

Войти
Регистрация
Восстановить пароль
 
Angriff
0 / 0 / 0
Регистрация: 22.04.2010
Сообщений: 5
25.04.2010, 17:49     Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело??? #1
Доброго времени суток... у меня совершенно не понятная для меня проблема... причем проблема не в написании кода, а в том как запустить програмку...
дело вот в чем ... пишу в VS2008 на Visual C++... пишу консольное приложение ...(отправить нужно рабочий exe-шник) в качестве аргумента на вход программе подается полный адрес txt файла с квадратной матрицей типа
Код
12    14     8
32     -      4
12     9      20
(могут быть прочерки в матрице)...
так вот мне нужно эту матрицу считать и произвести с ней определенные операции(какие именно не важно). проблема вот в чем...когда я компилирую код под VS2008 и запускаю(предварительно естественно указав адрес файла) програмку, то все нормально проходит...
а если я запускаю эту програмку из командной строки, то появляется отладчик вижуал студии и говорит что "произошло необработанное исключение win32 произошло в ..." (а у друга выскакивает сообщение типа "Debug Assertion Failed")...
так вот что делать??? ПОМОГИТЕ.... В ЧЕМ ДЕЛО НЕ ПОЙМУ...

вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//main.cpp
 
#include "matrix.h"
 
int main(int argc, char * argv[])
{
    if (argc != 2){
        std::cout << "Wrong arguments\n" ;
        return 0;
    }
    cout << "First matrix "<<endl;
    matrix A = new matrix(argv[1]);
    cout<<"this string isn't print"<<endl;
           return 1;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//matrix.h
 
#include <iostream>
#include <cstdlib>
#include <vector>
#include <fstream>
 
using namespace std;
 
typedef struct{
    int value;
    int index;
}elem;
 
class matrix {
    int n;
    int _i, _j, ii, jj;
    (vector<elem>) ** ptr;
public:
    matrix(const char * a);
    ~matrix(){};
};
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//matrix.h
 
#include <iostream>
#include <fstream>
#include "matrix.h"
 
matrix::matrix(const char * a){
    vector<elem> *pt;
    char  str[100];
    n = 0;
    _i = 0;
    _j = 0;
    elem element;
    int num,i,k;
    //подсчет строк
    ifstream in1;
    in1.open(a);
    while(in1.getline(str,99) != NULL){
        n++;
    }
    in1.close();
    cout<< n<<endl;
    ptr = new (vector<elem>*);
 
    //считывание матрицы
    ifstream in;
    cout<< "before open"<<endl;
    in.open(a);
    cout<< "after open"<<endl;
    for (i = 0; i < n; i++ ){
        pt = new (vector<elem>);
        for(k = 0;k < n; k++){
            in >> str;
            if ((num = atoi(str)) == 0){
                num = -1;
            }
            element.index = 0;
            element.value = num;
            pt->push_back(element);
        }
        element.index = 0;
        element.value = i;
        pt->push_back(element);
        *(ptr+i) = pt;
    }
    *(ptr+n) = new (vector<elem>);
    for (i = 0; i < n+1; i++){
        element.value = i;
        element.index = 0;
        (*(ptr+n))->push_back(element);
    }
    cout<< "end"<<endl;
    in.close();
    cout<< "after close"<<endl;
}
Вроде все ...(у меня программа больше значительно, но проблема именно со считыванием матрицы(точнее с запуском из консоли) )

кстати, сообщениt "before close" выводится, а сообщение "this string isn't print" нет

ПОМОГИТЕ ПЛЗ... заранее спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.04.2010, 17:49     Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело???
Посмотрите здесь:

небольшая ошибка в чем дело? C++
C++ не пойму в чем дело
Ни как не разберусь в чем дело... C++
getline() в чем дело C++
Visual C++ WINAPI, не пойму в чем дело
не могу понять в чем дело C++
C++ в чем дело?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
M128K145
Эксперт C++
 Аватар для M128K145
8276 / 3495 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
25.04.2010, 21:38     Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело??? #2
перепишите так
C++
1
2
3
4
5
6
7
8
9
10
11
12
int main(int argc, char * argv[])
{
    /*if (argc != 2){
        std::cout << "Wrong arguments\n" ;
        return 0;
    }*/
    cout << "First matrix "<<endl;
    matrix* A = new matrix(/*argv[1]*/"input.txt");//почему не указатель был??
    cout<<"this string isn't print"<<endl;
    system("pause");
    return 0;//почему здесь 1 было???
}
Angriff
0 / 0 / 0
Регистрация: 22.04.2010
Сообщений: 5
25.04.2010, 21:43  [ТС]     Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело??? #3
с ошибками согласен, но не помогло к сожалению...(((... а у кого нить работает при запуске из командной строчки?
M128K145
Эксперт C++
 Аватар для M128K145
8276 / 3495 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
25.04.2010, 21:48     Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело??? #4
Angriff, как запускаете из командной строки?
Angriff
0 / 0 / 0
Регистрация: 22.04.2010
Сообщений: 5
25.04.2010, 21:58  [ТС]     Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело??? #5
ну открываешь командную строку виндовс, переходишь в папку с exe-шником и пишешь что то типа
.\prog.exe 1.txt
где prog.exe программа, 1.txt - файл с матрицей

я же писал, что вижуал студи нормально запускает, а из командной строки не запускается...
M128K145
Эксперт C++
 Аватар для M128K145
8276 / 3495 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
25.04.2010, 22:11     Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело??? #6
Сейчас не хочется ковыряться, могу точно сказать, что проблема с 45 строкой matrix.cpp
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.04.2010, 22:42     Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело???
Еще ссылки по теме:

Не компилирует, в чем у меня ошибка? C++ Builder
C++ Builder Не могу понять в чем дело
В чем дело? C++
C++ Пятиминутное дело!В чем ошибка?
Ну в чем дело то? C++ Builder

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Angriff
0 / 0 / 0
Регистрация: 22.04.2010
Сообщений: 5
25.04.2010, 22:42  [ТС]     Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело??? #7
а в чем именно проблемма?? что в 45 строке плохого???
Yandex
Объявления
25.04.2010, 22:42     Не запускается в консоли!!!(А VS2008 компилирует и запускает)... В чем дело???
Ответ Создать тему
Опции темы

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