sizeof()

Giới thiệu

Hàm sizeof() có nhiệm vụ trả về số byte bộ nhớ của một biến, hoặc là trả về tổng số byte bộ nhớ của một mảng array.

Cú pháp

sizeof(variable) 

Tham số

variable: mọi kiểu dữ liệu hoặc mọi biến (thuộc bất cứ kiểu dữ liệu nào) hoặc một mảng.

Ví dụ

Hàm sizeof() tỏ ra rất hiệu quả trong việc kiểm tra độ dài chuỗi, nhưng bạn cần lưu ý cho về ký tự "cần cân" của Arduino. Sau đây là một ví dụ về việc đọc từng giá trị của một chuỗi cho trước. Để thấy được hiệu quả chương trình bạn hãy thử thay chuỗi trong ví dụ bằng một chuỗi khác xem.

char myStr[] = "this is a test";
int i;

void setup(){
  Serial.begin(9600);
}

void loop() {
  for (i = 0; i < sizeof(myStr) - 1; i++){
    Serial.print(i, DEC);
    Serial.print(" = ");
    Serial.write(myStr[i]);
    Serial.println();
  }
  delay(5000); // làm chậm chương trình để bạn thấy được chương trình này muốn nói lên điều gì
}

Lưu ý

Vì hàm sizeof sẽ trả về số byte bộ nhớ của một biến hay một mảng nào đó, vì vậy nếu bạn muốn ĐẾM Số phần tử của một mảng số nguyên có kiểu dữ liệu > 1 byte (như là: int, word, float,...) thì bạn cần chia số bộ nhớ của mảng cho số bộ nhớ của kiểu dữ liệu của mảng đó. Ví dụ một mảng có kiểu int.

for (i = 0; i < (sizeof(myInts)/sizeof(int)) - 1; i++) {
  // hàm làm gì đó với biến myInts[i]
}

 

Reference Tags: 
lên
14 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Kết quả VMIG - Chúc mừng 40 + 10 dự án được vào vòng trong

Cuối cùng, chúng ta đã có kết quả vòng 1 - vòng loại ý tưởng của cuộc thi VMIG. Ngoài 40 dự án được tài trợ board và tài trợ tiền theo hoạch định ban đầu, chúng ta còn có thêm 10 dự án tiềm năng được tài trợ board (không được tài trợ tiền).

lên
6 thành viên đã đánh giá bài viết này hữu ích.

Sự sáng tạo qua các phiên bản phần cứng của mạch tự động Arduino

Trong bài viết ngày hôm nay, chúng ta sẽ tìm hiểu về lịch sử sáng tạo của mạch tự động Arduino qua các phiên bản mạch. Từ đó, tôi mong muốn bạn tìm được sự sáng tạo trong chính lịch sự của sự phát triển của Arduino. Bài viết này có thể chưa mô tả được hết sự sáng tạo, có thể nó chưa làm hài lòng mong đợi của bạn về sự sáng tạo, nhưng nó sẽ là một ghi chú hữu ích cho sự phát triển trong việc sáng tạo của riêng cá nhân / tổ chức của bạn.

lên
16 thành viên đã đánh giá bài viết này hữu ích.