Mẹo kiểm tra lỗi chuyển đổi chuỗi sang số thực trong C
tsudev· 12/10/2026
Giới thiệu
Khi làm việc với dữ liệu số thực trong C, việc chuyển đổi chuỗi sang số thực là một thao tác phổ biến. Tuy nhiên, việc này cũng có thể dẫn đến lỗi nếu không được thực hiện đúng cách. Trong bài viết này, chúng ta sẽ tìm hiểu về cách kiểm tra lỗi chuyển đổi chuỗi sang số thực trong C.Chuyển đổi chuỗi sang số thực
Chức năngstrtod trong C được sử dụng để chuyển đổi chuỗi sang số thực. Cú pháp của hàm này như sau: double strtod(const char *nptr, char **endptr);. Hàm này sẽ chuyển đổi chuỗi nptr sang số thực và trả về giá trị đó. Nếu có lỗi xảy ra trong quá trình chuyển đổi, hàm sẽ trả về giá trị 0.
Kiểm tra lỗi
Để kiểm tra lỗi khi chuyển đổi chuỗi sang số thực, chúng ta cần kiểm tra giá trị trả về của hàmstrtod. Nếu giá trị trả về là 0, có thể là do lỗi xảy ra trong quá trình chuyển đổi. Ngoài ra, chúng ta cũng cần kiểm tra giá trị của endptr để biết được vị trí của lỗi.
Ví dụ, chúng ta có thể sử dụng hàm strtod như sau:
c
#include <stdio.h>
#include <stdlib.h>
int main() {
const char *str = "123.45";
char *endptr;
double num = strtod(str, &endptr);
if (num == 0 && *str != '0') {
printf("Lỗi chuyển đổi chuỗi sang số thực\n");
} else {
printf("Giá trị số thực: %f\n", num);
}
return 0;
}Trong ví dụ trên, chúng ta sử dụng hàm
strtod để chuyển đổi chuỗi "123.45" sang số thực. Nếu giá trị trả về là 0 và chuỗi không bắt đầu bằng '0', chúng ta sẽ hiển thị thông báo lỗi.
Kết luận
Kiểm tra lỗi khi chuyển đổi chuỗi sang số thực trong C là một bước quan trọng để đảm bảo tính chính xác của chương trình. Bằng cách sử dụng hàmstrtod và kiểm tra giá trị trả về, chúng ta có thể tránh được lỗi và đảm bảo rằng chương trình của mình hoạt động đúng cách. Để tìm hiểu thêm về chủ đề này, bạn có thể tham khảo nguồn https://sebsite.pw/w/20261009-strtod.html.