Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Viết chương trình cho kết quả khác nhau khi biên dịch C và C++


Viết chương trình biên dịch và chạy cả trong C và C++ nhưng cho kết quả khác nhau.

Có nhiều loại chương trình cho kết quả khác nhau khi biên dịch C vs C++.

i. Sử dụng hằng ký tự (character literals) – C và C++ xử lý ký tự khác nhau. Trong C, chúng là hằng nguyên (integer literals), trong C++ là ký tự.

Ví dụ

#include 
int main(){
    printf("%d", sizeof('a'));
    return 0;
}

Kết quả

C : 4 C++: 1

ii. Sử dụng số nhị phân – giá trị nhị phân trong C không được coi là nhị phân, xem như số nguyên. Trong C++ thì được coi là nhị phân.

Ví dụ

#include 
int main(){
    printf("%d", sizeof(1!=1));
    return 0;
}

Kết quả

C : 4 C++: 1