Lỗi has stopped hardworking lập trình dev c++ năm 2024

I am very new in C++ programing. I tried to write a C++ code, where a matrix from an input file will be created for a given condition(the condition is written as afunction). After creating the first row of the matrix I get the folloing message:

Filename.exe has stopped working A problem caused the program to stop working correctly. Windows will close the program and notify you if a solution is available.

My input file is as follows (matrix.txt):

1
2
3
4
5
6
7
8
9
10
11
12
13
  
This is a line, below is another line with numbers
0.15 10.1 15.001
*M
2.5  3.01  4.11
*M
6.16  7.17  8.01
*M
10.16 11.133 12.12
*M
14.17 15.110 16.16

And my code is as follows:

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
// Reading the input file.

# include 

# include 

# include 

# include 

# include 

# include 
using namespace std;
vector > read(ifstream& fil, string sec,string fir)
{
    string lines;
    vector > data;
        if (fir == sec)
        {
            while (getline(fil,lines))
            {
                //istringstream is(lines);
                stringstream is(lines);
                data.push_back(vector(istream_iterator(is),
                                              istream_iterator()));
            }
        }
    return data;
}
int main()
{
    int n, m;
    ifstream pa("matrix.txt");
    vector > matr;
    string first, ba("*M");
    while (pa>>first)
    {
        pa.ignore(numeric_limits ::max(),'\n');
        matr = read(pa,ba,first);
    }
    n = matr.size();
    m = matr[0].size();
    for ( int i = 0; i

As mentioned I get the first row (2.5 3.01 4.11), then the program stops. I use Code::Blocks 16.01. Any suggestions will be much appreciated!

With friendly greetings, qsqais

Last edited on

Tip: Learn how to debug to catch these types of problem and save yourself countless of days in the future.

Problem:

The vector "matr" is of size 7.

1
2
3
4
5
6
7
8
for (int i = 0; i

the problem is at the second loop. When i = 1. If you debug the code you find out that matr[0] is of size 3, which is what you expect. So is matr[2-6], But now matr[1]. matr[1] is of size 0, which makes the program crash at matr[1][j].

Dear TarikNeaj,

Thank you very much, now it works. When I had my read function inside the int main (), it did work and the rows with *M were not taking into the matrix size (the size was 4x3), but once I tried to rearrange the code and creat the function it took also the rows with *M into account.

As I am very new in programing and it may sound stupid, could you suggest some tutorails where I can learn debugging.

Kind regards, qsqais

Last edited on

Thanks alot once again!!

One more question. Suppose my input file continues with strings as follow:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
This is a line, below is another line with numbers
0.15 10.1
*M
2.5  3.01  4.11
*M
6.16  7.17  8.01
*M
10.16 11.133 12.12
*M
14.17 15.110 16.16
Reading should stop in this line
another line
another line

How can I read lines after *M only with numbers? Because currently my code reads all the lines after *M. I tried break option with if statement but it didnt work.

Trong quá trình sử dụng máy tính, không ít người dùng gặp phiền toái với lỗi Has stopped working. Lỗi này xuất hiện khá phổ biến trên các ứng dụng và phần mềm. Vậy nguyên nhân gây lỗi Has stopped working do đâu và có những cách nào khắc phục lỗi này. Hãy tìm hiểu bài viết dưới đây để có được đáp án nhé!

Bạn đang dùng phần mềm hay chơi game bị lỗi Has stopped working nhưng không biết đây là lỗi gì? Hiểu một cách đơn giản, khi máy tính xuất hiện thông báo lỗi Has stopped working có nghĩa là phần mềm hoặc game bạn đang chơi đã bị dừng hoạt động. Nguyên nhân gây ra lỗi này khá đa dạng, hãy cùng tìm hiểu trong phần tiếp theo dưới đây.

Lỗi has stopped hardworking lập trình dev c++ năm 2024
Lỗi Has stopped working là gì?

Nguyên nhân lỗi has stopped working

Trước khi áp dụng các biện pháp xử lý lỗi Has stopped working Win 7 64bit hoặc Win 10, thì người dùng cũng cần biết chính xác nguyên nhân gây ra lỗi do đâu. Dưới đây là một số “thủ phạm” có thể gây lỗi thường gặp như sau:

  • Do máy tính bị nhiễm virus, malware hoặc phần mềm độc hại.
  • Do ổ cứng máy tính bị phân mảnh quá nhiều.
  • Do máy tính bị xung đột phần mềm.
  • Lỗi do RAM máy tính.
  • Ngoài ra có thể do card màn hình bị lỗi cài đặt hoặc Driver bị cũ và lỗi thời.

Cách khắc phục lỗi has stopped working

Sau khi nhận định các nguyên nhân có thể gây lỗi, bạn hãy thử áp dụng một trong các giải pháp dưới đây để giải quyết nhanh chóng lỗi này nhé!

1. Xử lý lỗi hệ thống trên máy tính

Bước 1: Nhấn tổ hợp phím Windows + S để mở hộp thoại tìm kiếm trên máy tính Windows lên. Sau đó, bạn nhập từ khóa “Command Prompt“ vào ô tìm kiếm. Chọn tiếp mở Command Prompt bằng quyền Administrator.

Lỗi has stopped hardworking lập trình dev c++ năm 2024

Bước 2: Tại cửa sổ Command Prompt nhập lệnh “sfc /scannow” để hệ điều hành Windows tiến hành kiểm tra và quét hệ thống.

Lỗi has stopped hardworking lập trình dev c++ năm 2024

Bước 3: Thường sẽ mất khoảng 10 – 15 phút để hoàn tất việc quét lỗi. Nếu phát hiện trên máy có lỗi sẽ hiển thị thông báo ngay trên màn hình để người dùng có thể biết được.

Lỗi has stopped hardworking lập trình dev c++ năm 2024

2. Sửa lỗi do ổ cứng bị lỗi hỏng

Bước 1: Bạn mở thư mục My Computer (hoặc My PC ) và chọn ổ C.

Bước 2: Nhấn chuột phải vào ổ C và chọn Properties.

Lỗi has stopped hardworking lập trình dev c++ năm 2024

Bước 3: Tại cửa sổ Properties, bạn chọn tab Tools.

Bước 4: Tại mục Error checking, chọn tiếp Check.

Lỗi has stopped hardworking lập trình dev c++ năm 2024

Bước 5: Trên cửa sổ Error checking mới hiện ra, bạn chọn mục Scan Driver để bắt đầu quá trình quét.

Lỗi has stopped hardworking lập trình dev c++ năm 2024

Bước 6: Đợi hoàn tất quá trình quét ổ cứng, nếu không có lỗi gì thì bạn hãy thử tiếp cách thức 3 nhé.

3. Sửa lỗi xung đột phần mềm và hệ điều hành

Bước 1: Nhấn tổ hợp phím Windows + R để mở cửa sổ lệnh RUN và nhập từ khóa “msconfig” >> Enter.

Lỗi has stopped hardworking lập trình dev c++ năm 2024

Bước 2: Tại cửa sổ System Configuration, bạn chọn tab Services.

Lỗi has stopped hardworking lập trình dev c++ năm 2024

Bước 3: Chọn tiếp mục Hide all Microsoft services để tiến hành ẩn tất cả dịch vụ của Microsoft.

Lỗi has stopped hardworking lập trình dev c++ năm 2024

Bước 4: Nhấn chọn Disable All để tiến hành vô hiệu hóa các dịch vụ và ứng dụng đang chạy ngầm trên máy, sau đó chọn Apply >> OK.

Hoàn thành 4 bước trên, bạn hãy khởi động lại máy tính và kiểm tra xem lỗi trên đã được khắc phục chưa nhé! Bài viết trên đây đã chia sẻ đến người dùng 3 cách sửa lỗi Has stopped working trên máy tính Windows được áp dụng phổ biến.

Nhìn chung người dùng cần căn cứ vào nguyên nhân cụ thể gây lỗi để có thể biết cách khắc phục nhanh nhất có thể nhé. Hy vọng các thông tin trên có thể giúp ích cho bạn trong quá trình sửa lỗi trên máy tính.