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

Đề tài: int *a khác với int **a như thế nào

  1. #1
    Ngày gia nhập
    09 2011
    Bài viết
    16

    Wink int *a khác với int **a như thế nào

    mình đang không hiểu giữa 2 khai báo int *a và int **a khác nhau ở chỗ nào mong mọi người giải thích giúp
    thank.

  2. #2
    Ngày gia nhập
    10 2009
    Nơi ở
    Close All
    Bài viết
    993

    Trích dẫn Nguyên bản được gửi bởi 0zMARIOz0 Xem bài viết
    mình đang không hiểu giữa 2 khai báo int *a và int **a khác nhau ở chỗ nào mong mọi người giải thích giúp
    thank.
    int a=1;
    int *b=&a;
    int **c=&b;
    Đã được chỉnh sửa lần cuối bởi tauit_dnmd : 02-10-2011 lúc 12:53 PM. Lý do: ghi nhầm ?:(

  3. #3
    Ngày gia nhập
    06 2010
    Bài viết
    17

    Khác nhau ở chỗ con trỏ *a lưu đia chỉ của biến a
    Còn con trỏ **a lưu địa chỉ của con trỏ *a!
    C++ Code:
    1. int i=0, n=1;
    2. while(i<n)
    3.     cout << "Vô tận!";

  4. #4
    Ngày gia nhập
    09 2011
    Bài viết
    16

    ohh! mình hiểu rồi cảm ơn các ban

  5. #5
    Ngày gia nhập
    03 2011
    Bài viết
    22

    con trỏ của con trỏ đúng không nhỉ???

  6. #6
    Ngày gia nhập
    04 2008
    Nơi ở
    Hue city
    Bài viết
    40

    Mặc định int *a khác với int **a như thế nào

    vd như thế này:
    *a là con trỏ chứa địa chỉ của biến nào đó, nếu muốn thay đổi giá trị của biến nó đang trỏ tới thì dùng **a.

  7. #7
    Ngày gia nhập
    10 2009
    Nơi ở
    Close All
    Bài viết
    993

    Trích dẫn Nguyên bản được gửi bởi loicuoi Xem bài viết
    vd như thế này:
    *a là con trỏ chứa địa chỉ của biến nào đó, nếu muốn thay đổi giá trị của biến nó đang trỏ tới thì dùng **a.
    Không đúng bạn ah. Có thể bạn hiểu là đúng,nhưng xét về cách diễn đạt,câu chữ thì sai hoàn toàn.
    int *a;
    -->thì a là con trỏ , chứ *a không fai là con trỏ.

  8. #8
    Ngày gia nhập
    01 2011
    Nơi ở
    \WINDOWS\Assembly\
    Bài viết
    54

    Trích dẫn Nguyên bản được gửi bởi 0zMARIOz0 Xem bài viết
    mình đang không hiểu giữa 2 khai báo int *a và int **a khác nhau ở chỗ nào mong mọi người giải thích giúp
    thank.
    C Code:
    1. int *a; // khai báo một con trỏ trỏ đến một biến có kiểu int
    2. int **a; // Khai báo một con trỏ đa cấp trỏ đến một con trỏ kiểu int * cụ thể là int *a

    VD:
    C Code:
    1. int main(int argc, char* argv[])
    2. {
    3.     int a = 10;
    4.     int *p;
    5.     int **p;
    6.  
    7.     p = &a;
    8.     pp = &p;
    9.  
    10.     *p = 10; // tương đương với a
    11.     **p = 100; // tương đương với *p và a
    12.  
    13.     return 0;
    14. }

  9. #9
    Ngày gia nhập
    10 2009
    Nơi ở
    Close All
    Bài viết
    993

    Trích dẫn Nguyên bản được gửi bởi taller Xem bài viết
    C Code:
    1. int *a; // khai báo một con trỏ trỏ đến một biến có kiểu int
    2. int **a; // Khai báo một con trỏ đa cấp trỏ đến một con trỏ kiểu int * cụ thể là int *a

    VD:
    C Code:
    1. int main(int argc, char* argv[])
    2. {
    3.     int a = 10;
    4.     int *p;
    5.     int **p;
    6.  
    7.     p = &a;
    8.     pp = &p;
    9.  
    10.     *p = 10; // tương đương với a
    11.     **p = 100; // tương đương với *p và a
    12.  
    13.     return 0;
    14. }
    Sai hoàn toàn. .

  10. #10
    Ngày gia nhập
    08 2011
    Nơi ở
    /pentest
    Bài viết
    44

    @tauit: để mình trả lời thay bạn kia -))

    int* p; // p là một con trỏ nắm giữ địa chỉ của một biến có kiểu nguyên

    int** p; // p là một con trỏ cấp 2 nắm giữ địa chỉ của một biến có kiểu nguyên, như vậy *p là một con trỏ nắm giữ địa chỉ của một một biến nguyên mà nội dung biến này là **p, vậy suy ra *p khác a

    cho cái sơ đồ cho nó dễ hiểu nhỉ
    p->*p->**p

    bonus thêm một cách suy nghĩ: g/s có khai báo int***** p; // 5 sao cho nó sướng -)), thì sơ đồ tham chiếu là: p->*p->**p->***p->****p->*****p
    sơ đồ khử tham chiếu: *****p, ****p, ***p, **p, *p // chỉ đến *p thôi nha, đến p thì nói làm chi mô rứa.

    enjoy.
    We are oft to blame in this...'Tis too much proved.
    - That with devotion's visage and pious action we do sugar o'er the devil himself.

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