By GokiSoft.com|
15:09 03/12/2021|
Lập Trình C
[Video] Tìm hiểu con trỏ - Pointer - Lập trình C
#include <stdio.h>
#include <stdlib.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[]) {
//Pointer
//Bai toan nhap du lieu
int x = 5;
char c;
float t;
int k[10];
// printf("\nNhap x = ");
// scanf("%d", &x);
printf("\nX -> Gia tri x = %d, dia chi: %X", x, &x);
//Bai toan con tro => pointer
int *p;//bien con tro => pointer
p = &x;
printf("\nP -> Gia tri p = %X, dia chi: %X, gia tri tro toi: %d", p, &p, *p);
x++;
printf("\n*p = %d", *p);//6
*p = *p + 1;
printf("\nx = %d", x);//7
*p += 1;
printf("\nx = %d", x);//8
*p = x + 2;
printf("\nx = %d", x);//10
(*p)++;
printf("\nx = %d", x);//11
printf("\n*p = %d", *p);//11
*p++;
printf("\nx = %d", x);//11
printf("\n*p = %d", *p);//11
//mang
int m[5] = {1, 5, 2, 7, 8};
int i;
// for(i=0;i<5;i++) {
// printf("\nNhap m[%d] = ", i);
//// scanf("%d", &m[i]);
// scanf("%d", m + i);
// }
int *q;
//lam sao de cai dat *q -> tro toi mang m nhu nao
q = &m[0];//q = m;
//q, q+1, q+2, q+3, q + 4 <=> m, m+1, m+2, m+3, m+4
// for(i=0;i<5;i++) {
// printf("\n%d", m[i]);
// printf("\n%d", *(m+i));
// printf("\n%d", q[i]);
// printf("\n%d", *(q+i));
// }
printf("\np = %d", q[0]);
*q++;
printf("\np = %d", q[0]);
//cap phat o nho cho con tro pt;
int *pt;
//lam sao cap phat cho con tro pt => tro toi 1 mang gom 5 phan tu.
pt = (int *) malloc(5 * sizeof(int));//pt => cap phat cho pt 1 mang gom 5 so nguyen
for(i=0;i<5;i++) {
printf("\nNhap pt[%d] = ", i);
scanf("%d", pt + i);
}
for(i=0;i<5;i++) {
printf("%d", pt[i]);
}
free(pt);
//Bai toan: *d => 1 (1), 2 (3), 5 (8) => lam sao quan ly mang *d => cap phat dong =< 1, 3, 8
int *d;
d = (int *) calloc (1, sizeof(int));
for(i=0;i<1;i++) {
printf("\nNhap d[%d] = ", i);
scanf("%d", d + i);
}
//cap d => tong so phan tu la 3
d = (int *) realloc (d, 3 * sizeof(int));
for(i=1;i<3;i++) {
printf("\nNhap d[%d] = ", i);
scanf("%d", d + i);
}
for(i=0;i<3;i++) {
printf("%d", d[i]);
}
return 0;
}
Tags:
Phản hồi từ học viên
5
(Dựa trên đánh giá ngày hôm nay)