Ifndef Là Gì

     
Hằng số ( Constant )# define được dùng để định nghĩa hằng số vào preprocessor. Cách áp dụng như sau :

#define THREE 3Sau câu lệnh này thì bất kể chỗ nào gồm THREE vào code của chúng ta thì compiler sẽ cầm cố nó thành 3 hết. Tuy nhiên, vị trình biên dịch ko hiểu dòng 3 bên trên là số giỏi là chữ, là int giỏi float, nó chỉ dễ dàng làm các bước copypaste phần đông gì đã có được định nghĩa mà thôi. Thử xét tiếp lấy một ví dụ sau.

Bạn đang xem: Ifndef là gì

Bạn đang xem: Ifndef là gì

#define FOUR 3 + 1Giả sử tiếp nối bạn sử dụng FOUR này như sau.


x = FOUR * 5;thì hiệu quả của x lúc này sẽ chưa phải là 4 *5 cơ mà sẽ là 3 + 1 * 5 và công dụng trả về đang là 8 thay bởi vì là 20, khác hoàn toàn dự định của chúng ta. Vì thế lúc cần sử dụng define để có mang hằng số, thì giỏi hơn hết là chúng ta nên thêm vết ngoặc tròn () vào phần định nghĩa.

#define FOUR (3 +1)thì lúc này câu lệnh sẽ bình yên hơn.

Các directive điều kiện (#ifdef, #ifndef, #if, #endif, #else & #elif)


ifdef cùng ifndef là viết tắt của if definedvà if not defined, nghĩa là chúng sẽ kiểm tra xem có thực hiện 1 đoạn code xuất xắc là bỏ dở nó bằng phương pháp trải qua việc kiểm tra hoàn cảnh của 1 cái macro nào đó đã được tư tưởng hay chưa. Lấy ví dụ như :# ifdef SIZEint table ; # endif Ở lấy một ví dụ trên. Đoạn code int table chỉ được dịch trường hợp như macro kích cỡ đã được tư tưởng trước đó, còn nếu không thì compiler sẽ bỏ lỡ và nhảy thằng cho endif .

Xem thêm: Công Và Thụ Là Gì ? Những Điều Thú Vị Về Danh Xưng Đến Từ Truyện Đam Mỹ


Cách dùng của ifndef thì ngược lại hoàn toàn.


#if, #else và #elif

#if, #else & #elif (else if). Được dùng tương tự như với các câu lệnh if else bình thường. Tuy nhiên hãy nhớ rằng, vì đó là những câu lệnh làm việc Preprocessor nên các điều kiện theo sau if hoặc elif chỉ nhận xét được các constant expression mà lại thôi. (Xem cụ thể về constant expression ở đây). 1 ví dụ về các directive trên:

#if size > 200#undef SIZE#define form size 200#elif size Thử đoán xem chuyện gì sẽ xảy ra với đoạn code trên. Lúc mà chúng ta cố chuyển 1 macro không được định nghĩa là form size vào phần đk của câu lệnh if đầu tiên. Sự thực là nếu 1 macro không được định nghĩa, compiler sẽ thay thế sửa chữa nó bằng 0. Vậy nên kết quả cuối cùng của những câu lệnh trên. Câu lệnh #define size 100 sẽ được thực hiện và nhảy về câu lệnh endif ngay lập tức sau đó.


Phần 1 của series bài xích về Preprocessor hoàn thành tại trên đây do tác giả cảm thấy đã không còn khoái cảm. Hẹn chúng ta ở bài tiếp theo về Preprocessor – bài tiếp sau mình sẽ trình bày về phần quan trọng nhất của Preprocessor sẽ là Macro.

Xem thêm: Jd Là Gì ? Mẹo Viết Job Description Cực Hay, Thu Hút Ứng Viên


*

Nguyễn tân tiến Sáng

Xin chào, tôi là Nguyễn thanh nhã Sáng, người sáng lập và chỉnh sửa trang thông tin namlinhchihoasen.com. Hi vọng với lượng kỹ năng và kiến thức tôi mang đến để giúp ích những cho bạn. Cảm ơn các bạn đã ghẹ thăm website chúng tôi.