Công cụ bảo vệ mã nguồn .NET mạnh nhất, không thể unpack, miễn phí cho các khách hàng đầu tiên đăng ký.
Từ 1 tới 3 trên tổng số 3 kết quả

Đề tài: Tìm lỗi cài đặt stack với lập trình C++

  1. #1
    Ngày gia nhập
    06 2007
    Bài viết
    7

    Mặc định Tìm lỗi cài đặt stack với lập trình C++

    Tai sao no' chỉ xuat ra : stackday, stackday !!!!!!!!!!!!!!
    C++ Code:
    1. #ifndef stackMang_H
    2. #define stackMang_H
    3. #include<iostream>
    4. #define KICH_THUOC_MD 100
    5. typedef int KieuDL;
    6.  
    7. ///DINH NGHIA KIEU STACK
    8. class stack
    9. {
    10. private:
    11.     int kichThuoc;
    12.     int sP;
    13.     KieuDL *duLieu;
    14. public:
    15.     stack(int kichThuoc=KICH_THUOC_MD);
    16.     ~stack();
    17.     bool stackRong();
    18.     bool stackDay();
    19.     void push(KieuDL);
    20.     KieuDL pop();  
    21. };
    22. #endif
    23. [B]stackMang.cpp[/B]
    24.  
    25. #include"stackMang.h"
    26. using namespace std;
    27.  
    28. //CONTRUCTOR
    29. stack::stack(int kichThuoc)
    30. {
    31.     sP=-1;
    32.     this->kichThuoc=kichThuoc;
    33.     duLieu=new KieuDL[this->kichThuoc];
    34. }
    35.  
    36. //DECTRUCTOR
    37. stack::~stack()
    38. {
    39.     delete []duLieu;
    40. }
    41.  
    42. //KIEM TRA STACK CO RONG HAY KHONG?
    43. bool stack::stackRong()
    44. {
    45.     return(sP=-1?true:false);
    46. }
    47.  
    48. //KIEM TRA STACK CO DAY HAY KHONG?
    49. bool stack::stackDay()
    50. {
    51.     return(sP=KICH_THUOC_MD?true:false);
    52. }
    53.  
    54. //PUSH MOT PHAN TU VAO STACK
    55. void stack::push(KieuDL duLieu)
    56. {
    57. if (stackDay())
    58.         cout<<"stack day";
    59.     else
    60.     {
    61.         sP++;
    62.         this->duLieu[sP]=duLieu;
    63.     }
    64. }
    65.  
    66. ///POP MOT PHAN TU RA KHOI STACK
    67. KieuDL stack::pop()
    68. {
    69.     if (stackRong())   
    70.     {
    71.         cout<<"stack rong";            
    72.         return NULL;
    73.     }
    74.     else
    75.     {
    76.         KieuDL tam=this->duLieu[sP];
    77.         sP--;
    78.         return tam;
    79.     }
    80. }
    81. [B]main.cpp[/B]
    82. #include<iostream>
    83. #include"stackMang.h"
    84. #include<conio.h>
    85. using namespace std;
    86. void main()
    87. {
    88.     stack *s;
    89.     KieuDL tam;
    90.     s=new stack(10);
    91.     s->push(10);
    92.     s->push(30);
    93.     while (!s->stackRong())
    94.     {
    95.         tam=s->pop();
    96.         cout<<tam;
    97.     }
    98.    
    99. getch();
    100. }
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

  2. #2
    Ngày gia nhập
    08 2006
    Nơi ở
    TpHCM
    Bài viết
    202

    Code:
    bool stack::stackDay()
    {
    	return(sP=KICH_THUOC_MD?true:false);
    }
    xem phần gạch đít, thiếu dấu = thành phép gán

  3. #3
    Ngày gia nhập
    09 2006
    Bài viết
    711

    sP=KICH_THUOC_MD, lại lỗi 1 dấu = nữa.
    Đảo ngược lại, viết thành: KICH_THUOC_MD == sP, nghĩa là viết sao cho giá trị bên trái là hằng, gán = vào hằng thì compiler sẽ báo lỗi liền. Còn không chịu đổi, thì cái lỗi 1 dấu = sẽ còn hành cậu dài dài sau này.
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

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

  1. Bài tập C++ copy noi dung tu stack S sang stack D
    Gửi bởi thaodn_chuprong trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 12
    Bài viết cuối: 18-10-2012, 11:45 PM
  2. Cấu trúc dữ liệu Chuyển các phần tử từ stack này sang stack kia như thế nào?
    Gửi bởi rukawa1184 trong diễn đàn Thắc mắc CTDL & Giải thuật
    Trả lời: 9
    Bài viết cuối: 06-12-2011, 06:52 PM
  3. Stack, ngăn xếp - Thiết lập và ứng dụng stack trong C
    Gửi bởi PoPoPoPo trong diễn đàn Thủ thuật, Tutorials CTDL & Giải thuật
    Trả lời: 8
    Bài viết cuối: 15-11-2010, 11:24 PM
  4. Stack trên C | Lỗi khó hiểu trong Stack
    Gửi bởi tom3cang trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 1
    Bài viết cuối: 22-05-2009, 11:09 PM
  5. Code về stack | Chuyển hệ số 10 sang 2 dùng stack
    Gửi bởi ahappyboy89 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 13
    Bài viết cuối: 17-04-2009, 09:48 AM

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