QC

Con trỏ trong C

 Con trỏ (Pointer) trong C là một biến, nó còn được gọi là locator hoặc indicator chỉ ra một địa chỉ của một giá trị.

Cách Khai báo con trỏ trong C

int *a;  //con tro tro toi int
char *c; //con tro tro toi char

Con trỏ bằng ngôn ngữ C được khai báo bằng cách sử dụng dấu '*'.


Các Kí hiệu được sử dụng trong con trỏ

Kí hiệuTênMô tả kí hiệu
&Địa chỉ của toán tửXác định địa chỉ của một biến.
*Toán tử liên kết.Truy cập đến giá trị của địa chỉ.


Ví dụ :

#include<stdio.h> 
 
int main() {
    int number = 60;
    printf("Gia tri cua number la %d\n", number); // in ra giá trị
    printf("Dia chi cua number la %x", &number); // in ra địa chỉ
    return 0;
}


Kết quả:

Gia tri cua number la 60
Dia chi cua number la 23fe4c

Ví dụ 2: sử dụng con trỏ để hoán đổi 2 số mà không dùng biến tạm.


#include<stdio.h> 
 
int main() {
    int a = 10, b = 20;
    int *p1 = &a,*p2 = &b; 
    printf(" gia tri Truoc khi hoan doi: *p1=%d *p2=%d\n", *p1, *p2);
    // hoan doi
    *p1 = *p1 + *p2; // tổng
    *p2 = *p1 - *p2; // tổng - *p2 =p1.
    *p1 = *p1 - *p2; // tổng -*p1 =p2
    printf("gia tri Sau khi hoan doi: *p1=%d *p2=%d", *p1, *p2);
    return 0;
}

Kết quả :

gia tri Truoc khi hoan doi: *p1=10 *p2=20

gia tri Sau khi hoan doi: *p1=20 *p2=10


Con trỏ NULL (NULL Pointer)

 Trong C : Một con trỏ không được gán bất kỳ giá trị nào được gọi là con trỏ NULL. Nếu không có địa chỉ nào được chỉ định trong con trỏ tại thời điểm khai báo, bạn có thể chỉ định giá trị NULL. 

Khai báo :

int *p = NULL;

Trong hầu hết các thư viện, giá trị của con trỏ NULLlà 0.
























Nap Code vào PY32F003 dùng Stlink

 Nap Code vào PY32F003 dùng Stlink Bước 1: Cài đặt  KeilC v5.39 theo link sau ( chú ý 5.39 keil c mới nạp ok). https://edge07.111.ir.cdn.ir/...