Computer >> Máy Tính >  >> Lập trình >> C ++

Viết chương trình C không biên dịch bằng C ++

Ở đây, chúng tôi sẽ viết một số chương trình c sẽ không biên dịch bằng c ++. Mặc dù c ++ được coi là sự kế thừa của c có tất cả các tính năng của nó và có khả năng tương thích với mã c, nhưng một số chương trình sẽ không biên dịch hoặc mắc lỗi biên dịch khi được biên dịch bằng trình biên dịch c ++.

Danh sách một số chương trình C sẽ không biên dịch bằng c ++ là -

  • Gọi một hàm trước khi khai báo - Trong c ++, lệnh gọi hàm trước khi khai báo bị lỗi biên dịch. Nhưng điều này hoạt động tốt trong c.

Ví dụ

#include <stdio.h>
int main(){
   printHello();
   return 0;
}
void printHello(){
   printf("TutorialsPoint");
}

Đầu ra

TutorialsPoint
  • Sử dụng con trỏ đã đánh máy - nếu chúng ta khai báo một con trỏ trong c là void và sau đó sử dụng con trỏ này để trỏ các biến dữ liệu khác. Điều này có thể được thực hiện trong c bởi chính trình biên dịch nhưng trong c ++, những con trỏ này cần phải được đánh máy.

Ví dụ

#include <stdio.h>
int main(){
   void *ptr;
   int *ptr2 = ptr;
   return 0;
}
  • Khai báo các giá trị không đổi mà không cần khởi chạy - trong c, bạn có thể khai báo các giá trị không đổi mà không cung cấp bất kỳ giá trị nào cho nó nhưng điều này trả lại lỗi khi thực hiện trong c ++.

Ví dụ

#include <stdio.h>
int main(){
   const int x;
   printf("%d", x);
   return 0;
}

Đầu ra

0
  • Sử dụng con trỏ bình thường với biến const - trong c ++ điều này không được phép trong khi c cho phép sử dụng biến const với một con trỏ bình thường.

Ví dụ

#include <stdio.h>
int main(void){
   int const x = 3424;
   int *cptr = &x;
   printf("value of pointer : %d\n", *cptr);
   return 0;
}

Đầu ra

 Value of pointer: 3424
  • Sử dụng các từ khóa cụ thể làm tên biến - Trong ngôn ngữ lập trình c, việc sử dụng các từ khóa nhất định vì tên biến là hợp lệ, tức là sẽ biên dịch bằng c nhưng sẽ không biên dịch bằng c ++.

Ví dụ

#include <stdio.h>
int main(void){
   int class = 5;
   printf("%d", class);
}

Đầu ra

5

Đây là những từ khóa được bao gồm trong c ++, một số từ khóa khác là mới, xóa, rõ ràng, v.v.