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

Đề tài: [C]Lấy kích thước mảng

  1. #1
    Ngày gia nhập
    11 2006
    Bài viết
    6

    Mặc định [C]Lấy kích thước mảng

    Làm thế nào để khai báo mảng mà không cần chỉ ra kích thước và không cần khởi đầu.
    Mục đích là để mình nhập 1 chuỗi bất kỳ, sau đó có thể lấy số phẩn tử của chuỗi ấy. Help me!

  2. #2
    No Avatar
    Hannibal Khách

    Bạn có thể sử dụng danh sách liên kết ...

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

    Xài một con trỏ, một biến nhập vào là một chuỗi, xài vòng for để đếm số ký tự trong chuỗi rồi tương ứng khởi gán cho con trỏ là một mảng và cấp phát bộ nhớ cho nó.

    Edit: cách của mình không ổn rồi, sử dụng danh sách liên kết thế nào vậy???
    Đã được chỉnh sửa lần cuối bởi Solokop : 05-12-2006 lúc 01:57 PM.
    Nói là một chuyện, làm là một chuyện. Chi bằng ta làm xong rồi hãy nói như vậy thì nói và làm sẽ là một chuyện.

  4. #4
    Ngày gia nhập
    11 2006
    Bài viết
    6

    thanks nhé, tại vì tớ chưa học đến mấy cái đấy mà thầy giáo đã bắt làm bài tập: nhập vào 1 số (độ dài và hệ số bất kỳ) rồi viết chương trình chuyển nó sang các hệ số khác (mới học đến các vòng lặp chứ chưa học gì con trỏ hay danh sách cả)
    Đã được chỉnh sửa lần cuối bởi singO2 : 05-12-2006 lúc 02:04 PM.

  5. #5
    No Avatar
    duyanha88 Khách

    Trích dẫn Nguyên bản được gửi bởi singO2
    Làm thế nào để khai báo mảng mà không cần chỉ ra kích thước và không cần khởi đầu.
    Mục đích là để mình nhập 1 chuỗi bất kỳ, sau đó có thể lấy số phẩn tử của chuỗi ấy. Help me!
    Bạn có thể dùng phương pháp cấp phát động cho mảng. Bằng cách dùng một con trỏ và hàm malloc. Có thể tham khảo phần ví dụ dưới đây:


    #define N 100
    void main()
    {
    char *str = NULL;

    str = (char*)malloc(N * sizeof(char));

    if(str != NULL)
    {
    printf("Nhap mot chuoi bat ki: ");
    gets(str);
    }
    else
    {
    printf("Loi cap phat bo nho");
    }
    getch();
    }
    Chúc may mắn
    Đã được chỉnh sửa lần cuối bởi duyanha88 : 05-12-2006 lúc 02:04 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