Từ 1 tới 3 trên tổng số 3 kết quả

Đề tài: Lỗi Open File trong lập trình C++?

  1. #1
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    Mặc định Lỗi Open File trong lập trình C++?

    Mình đang ở trường complier Visual C++ 2005 nó báo lỗi runtime with file, mà debug ra từng đoạn không hề có 1 chỗ nào sai :(. Chả biết bị cái quái gì, có bạn nào có complier khác test dùm mình với.
    C++ Code:
    1. #include <iostream>
    2. #include <iomanip>
    3. #include <string>
    4. #include <fstream>
    5. #include <cstring>
    6.  
    7. using namespace std;
    8. const int MAX_SIZE = 1000;
    9.  
    10. void PrintNameHeader(ostream &oss)
    11. {
    12.     oss << "Boring \n";
    13. }
    14.  
    15. void GetStartEndValues(int& startNum, int& endNum)
    16. {
    17.     do
    18.     {
    19.         cout << "Enter the starting number : ";
    20.         cin >> startNum;
    21.         cout << "Enter the ending number : ";
    22.         cin >> endNum;
    23.  
    24.         if(startNum > endNum)
    25.             cout << "Starting value must be less than or equal to ending value.\n";
    26.         if(startNum < 1 || endNum < 1)
    27.             cout << "Starting value and ending value must be greater than or equal to 1.\n";
    28.     }while(startNum < 1 || endNum < 1 || startNum > endNum);
    29. }
    30.  
    31. bool IsPrime(int num)
    32. {
    33.     if(num < 32)
    34.         return (0xa08a28ac >> num) & 1;
    35.     if(!(num & 1))
    36.         return 0;
    37.     if(!(num % 3))
    38.         return 0;
    39.  
    40.     for(int next_num = 5; next_num * next_num <= num; next_num += 6)
    41.         if(!(num % next_num) || !(num % (next_num + 2)))
    42.             return 0;
    43.  
    44.     return 1;
    45. }
    46.  
    47. int main()
    48. {
    49.     int starting = 2;
    50.     int ending = 100;
    51.     char userChoice;
    52.  
    53.     //Create and Initialize all elements to 0.
    54.     int primeArray[MAX_SIZE] = {};
    55.  
    56.     //Ask user to change starting and ending values.
    57.     cout << "Would you like to change the ending and starting values [y/n] ? : ";
    58.     cin >> userChoice;
    59.  
    60.     if(userChoice == 'Y' || userChoice == 'y')
    61.     {
    62.         GetStartEndValues(starting, ending);
    63.     }
    64.  
    65.     //Ask user for the name of output file.
    66.    
    67.    
    68.     string fileName;
    69.     cout << "What is the name of the output file ? : ";
    70.     getline(cin, fileName);
    71.  
    72.     fstream clientFile;
    73.     clientFile.open(fileName.c_str(), ios::out);
    74.  
    75.  
    76.     //Store all primes into an array of int.
    77.     int totalPrimes = 0;
    78.     int index;
    79.     if(starting == 2)
    80.     {
    81.         primeArray[totalPrimes] = 2;
    82.         totalPrimes++;
    83.     }
    84.    
    85.     for(int number = starting - 1; number <= ending; number += 2)
    86.     {
    87.         if(IsPrime(number))
    88.         {
    89.             primeArray[totalPrimes] = number;
    90.             totalPrimes++;
    91.         }
    92.     }
    93.    
    94.     clientFile << right;
    95.     clientFile << "List of Prime numbers between " << starting << " and " << ending;
    96.     clientFile << endl << endl;
    97.     for(int x = 0; x < totalPrimes; ++x)
    98.     {
    99.         clientFile << setw(4) << primeArray[x];
    100.         if((x % 10) == 0)
    101.             clientFile << endl;
    102.     }
    103.  
    104.     clientFile << endl << endl;
    105.     clientFile.close();
    106.     return 0;
    107. }

  2. #2
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    Potay.com :
    Bỏ đoạn file đi chạy ngon lành, tách ra để riêng chạy cũng ngon lành, bỏ vào crash. What the hell is going on ?
    C++ Code:
    1. #include <iostream>
    2. #include <iomanip>
    3. #include <string>
    4. #include <fstream>
    5. #include <cstring>
    6.  
    7. using namespace std;
    8. const int MAX_SIZE = 10000;
    9.  
    10. void PrintNameHeader(ostream &oss)
    11. {
    12.     oss << "Boring \n";
    13. }
    14.  
    15. void GetStartEndValues(int& startNum, int& endNum)
    16. {
    17.     do
    18.     {
    19.         cout << "Enter the starting number : ";
    20.         cin >> startNum;
    21.         cout << "Enter the ending number : ";
    22.         cin >> endNum;
    23.  
    24.         if(startNum > endNum)
    25.             cout << "Starting value must be less than or equal to ending value.\n";
    26.         if(startNum < 1 || endNum < 1)
    27.             cout << "Starting value and ending value must be greater than or equal to 1.\n";
    28.     }while(startNum < 1 || endNum < 1 || startNum > endNum);
    29. }
    30.  
    31. bool IsPrime(int num)
    32. {
    33.     if(num < 32)
    34.         return (0xa08a28ac >> num) & 1;
    35.     if(!(num & 1))
    36.         return 0;
    37.     if(!(num % 3))
    38.         return 0;
    39.  
    40.     for(int next_num = 5; next_num * next_num <= num; next_num += 6)
    41.         if(!(num % next_num) || !(num % (next_num + 2)))
    42.             return 0;
    43.  
    44.     return 1;
    45. }
    46.  
    47. int main()
    48. {
    49.     int starting = 2;
    50.     int ending = 100;
    51.     char userChoice;
    52.  
    53.     //Create and Initialize all elements to 0.
    54.     int primeArray[MAX_SIZE] = {};
    55.  
    56.     //Ask user to change starting and ending values.
    57.     cout << "Default value is (2 - 100).\n";
    58.     cout << "Would you like to change the ending and starting values [Y / N] ? : ";
    59.     cin >> userChoice;
    60.     if(userChoice == 'Y' || userChoice == 'y')
    61.     {
    62.         GetStartEndValues(starting, ending);
    63.     }
    64.  
    65.     /*Ask user for the name of output file.
    66.     string fileName;
    67.     cout << "What is the name of the output file ? : ";
    68.     getline(cin, fileName);
    69.  
    70.     fstream clientFile;
    71.     clientFile.open(fileName.c_str(), ios::out);
    72.     */
    73.  
    74.     //Store all primes into an array of int.
    75.     int totalPrimes = 0;
    76.     if(starting == 2)
    77.     {
    78.         primeArray[totalPrimes] = 2;
    79.         totalPrimes++;
    80.     }
    81.     if((starting % 2) == 0)
    82.     {
    83.         starting = starting + 1;
    84.     }
    85.  
    86.     for(int number = starting; number <= ending; number += 2)
    87.     {
    88.         if(IsPrime(number))
    89.         {
    90.             primeArray[totalPrimes] = number;
    91.             totalPrimes++;
    92.         }
    93.     }
    94.     int twinPrimes = 0;
    95.     cout << right;
    96.     cout << "List of Prime numbers between " << starting << " and " << ending;
    97.     cout << endl << endl;
    98.     for(int x = 0; x < totalPrimes; ++x)
    99.     {
    100.         if(primeArray[x] == primeArray[x + 1] - 2)
    101.         {
    102.             twinPrimes++;
    103.         }
    104.         cout << setw(6) << primeArray[x];
    105.         if(((x + 1) % 10) == 0)
    106.             cout << endl;
    107.     }
    108.     cout << endl << endl;
    109.     cout << "There are " << totalPrimes << " between " << starting - 1 << " and " << ending << endl;
    110.     cout << "There are " << twinPrimes << " between " << starting - 1 << " and " << ending;
    111.     cout << endl << endl;
    112.     return 0;
    113. }

  3. #3
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    Hihi, cuối cùng cũng đã hiểu tại sao nó run-time error T_T. Thui để cho ai rảnh rỗi thì suy nghĩ cho vui vậy !

Các đề tài tương tự

  1. Lập trình C Lỗi C1083: Cannot open include file: 'complex.h': No such file or directory trong lập trình C?
    Gửi bởi nguyen_ndd trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 4
    Bài viết cuối: 30-03-2012, 12:13 PM
  2. Tạo hộp thoại open file trong MFC
    Gửi bởi ngochan011290 trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 10
    Bài viết cuối: 17-11-2010, 11:05 AM
  3. Làm sao để open file bằng cách double click vào file trong windows explorer?
    Gửi bởi Batchuoc_09 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 11
    Bài viết cuối: 18-07-2010, 01:12 PM
  4. ko mo dc file-> open trong vsc++ 6.0
    Gửi bởi phiquang40 trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 1
    Bài viết cuối: 21-04-2010, 07:44 PM
  5. Open file trong notepad?
    Gửi bởi thanh_it trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 5
    Bài viết cuối: 17-04-2009, 11:02 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn