01/10/2018, 08:40

Cho mình hỏi câu c++ này với ạ!

nó báo lỗi này là sao nhỉ mọi người?!thank mn

Nguyễn Văn Tâm viết 10:48 ngày 01/10/2018

Bạn sử dụng các biến trước khi nó được khởi tạo giá trị thì sai là đúng rồi. dòng float a float b phải khai báo (đồng thời khởi tạo) sau khi nhập xong các giá trị.

Võ Văn Linh viết 10:52 ngày 01/10/2018

Theo mình hiểu thì tùy theo compiler , có thể khai báo mà không cần khởi tạo giá trị , hoặc compiler sẽ ngầm định giá trị khởi tạo ban đầu ( = 0), hoặc là sẽ báo lỗi như trong trường hợp của bạn.

Trần Hoàn viết 10:48 ngày 01/10/2018

Việc khai báo mà không khởi tạo nhưng vẫn sử dụng theo mình là KHÔNG THỂ CHẤP NHẬN ĐƯỢC. Vì code nó như vậy, compile ra, có thể tuỳ hđh hoặc tuỳ theo phần cứng mà chương trình chạy có đúng hay không, rất dễ sinh bug. Ngay cả riêng với Visual Studio thì compile ở chế độ debug và release cũng có thể cấp giá trị mặc định khác nhau cho các biến.

Về phía bạn @vinhthang, bạn nên hiểu phép toàn = là phép gán, dùng để gán GIÁ TRỊ tại thời điểm phép toán được thực hiện. Bạn gán như vậy không có nghĩa là khi thay đổi x1, y1, x2, y2 thì a, b cũng thay đổi theo. Cho nên bạn phải nhập x1, y1, x2, y2 trước rồi mới gán giá trị cho ab.
Ví dụ:

int biến_1 = 2;//biến_1==2
int biến_2 = 3;//biến_2==3
int biến_3 = biến_1 * biến_2//biến_3==6
biến_1 = 10//biến_1 được gán giá trị mới. Nhưng do không chạy lệnh thay đổi biến_3 nên biến_3 vẫn bằng 6
Bài liên quan
0