Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 5 của 5
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    [hỏi]: Cách nối một chuỗi với 1 ký tự

    các bạn giúp mình với.
    cụ thể như sau
    đề yêu cầu xây dựng 1 lớp string và 1 lớp char. sau đó nối gép 1 chuỗi và 1 ký tự (cấp phát động)
    vd: string x="giup toi voi";
    char c('y');
    sau khi nối chuỗi sẽ la : giup toi voiy;

    mình làm như sau:
    Mã:
    class char_c
    {
    private:
    	char *cvalue;
    public:
    	char_c(void);
    	~char_c(void);
    };
    class string_s
    {
    private:
    	char *acontent;
    	int nlenght;
    public:
    	string_s(void);
    	
    	~string_s(void);
    string_s(const string_s&);
    string_s operator+(const string_s& );
    string_s operator=(const string_s&);
    friend ostream& operator<<(ostream& os,const string_s& );
    };
    nhưng làm như dậy không nối được chuỗi với ký tự mà chỉ nối chuỗi với chuỗi.

    mình mong bạn nào có ý tưởng thì chỉ mìh cách giải quuyết. thank all

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Thêm một cái hàm chồng
    string_s operator+(const char& );

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    hàm chồng mình làm thế này sai chỗ nào mà vẫn không chạy bạn nhỉ.
    Mã:
    string_s string_s::operator+(const char& a )
    {
    	string_s c;
    	c.nlenght=nlenght+a;
    	c.acontent=new char[c.nlenght+1];
    	strcpy(c.acontent,acontent);
    	strcat(c.acontent,a);
    }

  4. #4
    Ngày tham gia
    Sep 2015
    Đang ở
    89 Tam Trinh - Hoàng Mai - Hà Nội
    Bài viết
    0
    1. Xem lại sách giáo khoa, cách thức dùng chuỗi trong C
    2. Xem lại sách giáo khoa, cách viết hàm không phải là void

  5. #5
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    1)Ẹc. Ko hiểu bạn thêm cái thuộc tính nlength vào làm gì ấy nhỉ ??
    Làm việc với chuỗi thì đâu cần phải có "độ dài" như với mảng đâu mà lo lắng @@
    2)Bạn xây dựng lớp char (1 ký tự) sao lại có con trỏ (chuỗi) vào đấy ...Mình Ko hiểu bạn muốn làm gì với cái class này ??

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •