`int (*a)[100]` khác với `int *a` và `int *a[100]` như thế nào?

Anh xem e làm bảng này có đúng không ạ? e làm dựa vào những gì đọc được ở các bình luận trên
1.*pa

2.(*pa)[8]

3.*pa[8]

:smile:

1 Like

Cái 1 và 2 chính xác

cái 3 anh không hiểu lắm.

nghĩa là mảng con trỏ e viết tất cả các dấu * ở các phần tử ấy
pa[0] là con trỏ 1, vậy pa[0] + 5 ( cọng 1 số bất kì ) thì pa trỏ về đâu vậy anh?

tên mảng=phần tử đầu tiên
tên mảng = địa chỉ của phần tử đầu tiên

  1. pa=&(a[0])= a+0=a
1 Like

:3 e viết nhầm, ý e muốn hỏi chỗ
mảng các con trỏ,
khi khai báo *pa[8] nghĩa là trong mảng pa có 8 phần tử , mỗi phần tử là 1 con trỏ, nếu e viết
pa[0] nghĩa là con trỏ thứ 0 trong mảng
thế viết pa[2] = pa+ 2 thì con trỏ trỏ đến đâu ạ?
và pa[2]+2 có nghĩa không ạ, và nếu có thì con trỏ trỏ về đâu khi viết pa[2] +2
và pa[2] = pa[2] +2 nữa

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?