Announcement

Collapse
No announcement yet.

[OOP] hỏi CẤP PHÁT ĐỘNG CHUỖI KÍ TỰ

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [OOP] hỏi CẤP PHÁT ĐỘNG CHUỖI KÍ TỰ

    Bác nào biết giải đáp giúp e cái này với:
    E cần khai báo cấp phát động biến tên (chuỗi kí tự chưa biết trước bao nhiêu kí tự).
    Thắc mắc 1:
    char *ten=new char[25];
    cin.getline(ten, 25);
    ===> giả sử tên nhập vào nhỏ hơn 25 kí tự thì có cách nào thu hồi lại cho vừa đủ không?
    Thắc mắc 2:
    char* ten;
    ten="Nguyen Van A"; //12 kí tự
    ===> Trong trường hợp này biến ten được tự động cấp đủ 12 kí tự hay một con số mặc định nào?
    Bác nào biết chỉ giúp e vơi :salute:
    Lý Trọng Nhân
    Đ/c: KP. Hòa Long, P.Vĩnh Phú, TX. Thuận An, Bình Dương
    Y!M: trongnhanuit Facebook: facebook.com/trongnhan.uit Phone: 01683.205.103

  • #2
    Originally posted by 11520267 View Post
    Bác nào biết giải đáp giúp e cái này với:
    E cần khai báo cấp phát động biến tên (chuỗi kí tự chưa biết trước bao nhiêu kí tự).
    Thắc mắc 1:
    char *ten=new char[25];
    cin.getline(ten, 25);
    ===> giả sử tên nhập vào nhỏ hơn 25 kí tự thì có cách nào thu hồi lại cho vừa đủ không?
    Thắc mắc 2:
    char* ten;
    ten="Nguyen Van A"; //12 kí tự
    ===> Trong trường hợp này biến ten được tự động cấp đủ 12 kí tự hay một con số mặc định nào?
    Bác nào biết chỉ giúp e vơi :salute:
    trường hợp 1. chuyện thu hồi lại theo mình biết là không được trong trường hợp này.
    trường hợp 2. kích thước con trỏ trong 1 máy tính là không đổi nha bạn. con trỏ kiểu int, char, float... đều có cùng kích thước. câu lệnh ten="Nguyen Van A" làm cho con trỏ ten trỏ đến vùng nhớ chứa xâu "Nguyen Van A". việc làm này không thay đổi kích thước của biến ten.
    bạn đọc thêm bài này để tìm hiểu kích thước con trỏ nhé!
    http://forum.uit.edu.vn/threads/1151...iep-theo/page3
    Last edited by 11520327; 23-10-2012, 12:14.

    Comment


    • #3
      Originally posted by 11520267 View Post
      Bác nào biết giải đáp giúp e cái này với:
      E cần khai báo cấp phát động biến tên (chuỗi kí tự chưa biết trước bao nhiêu kí tự).
      Thắc mắc 1:
      char *ten=new char[25];
      cin.getline(ten, 25);
      ===> giả sử tên nhập vào nhỏ hơn 25 kí tự thì có cách nào thu hồi lại cho vừa đủ không?
      Thắc mắc 2:
      char* ten;
      ten="Nguyen Van A"; //12 kí tự
      ===> Trong trường hợp này biến ten được tự động cấp đủ 12 kí tự hay một con số mặc định nào?
      Bác nào biết chỉ giúp e vơi :salute:
      Trường hợp 1: Muốn thu hồi thì cấp cái khác rồi xóa cái cũ đi.

      Trường hợp 2: Ở đây chẳng có cấp và chẳng có tự động gì cả, trường hợp này là sai.

      Comment


      • #4
        thắc mắc 1: e nghĩ ý e nó hỏi là làm sao ng dùng nhập vào bao nhiêu ký tự thì tự động cấp phát vùng nhớ vừa đủ với nó vd: gõ vào 20 ký tự thì cấp đủ 21 chỗ o.O, vậy có cách làm nào ko a An ?

        Comment


        • #5
          Originally posted by 11520267 View Post
          Bác nào biết giải đáp giúp e cái này với:
          E cần khai báo cấp phát động biến tên (chuỗi kí tự chưa biết trước bao nhiêu kí tự).
          Thắc mắc 1:
          char *ten=new char[25];
          cin.getline(ten, 25);
          ===> giả sử tên nhập vào nhỏ hơn 25 kí tự thì có cách nào thu hồi lại cho vừa đủ không?
          Thắc mắc 2:
          char* ten;
          ten="Nguyen Van A"; //12 kí tự
          ===> Trong trường hợp này biến ten được tự động cấp đủ 12 kí tự hay một con số mặc định nào?
          Bác nào biết chỉ giúp e vơi :salute:
          không biết đoạn code của bạn yêu cầu những gì. bạn thử đoạn code sau:
          PHP Code:
           char *temp=new char;

              
          cout<<"nhap xau: ";
              
          cin.getline(temp255);
              
          cout<<"do dai luc dau: "<<strlen(temp)<<" xau: "<<temp<<endl;
              
              
          cout<<"nhap xau: ";
              
          cin.getline(temp255);
              
          cout<<"do dai luc sau: "<<strlen(temp)<<" xau: "<<temp
          Last edited by 11520327; 24-10-2012, 14:52.

          Comment

          LHQC

          Collapse
          Working...
          X