Một số kèo bóng đá pháp xử lý có sẵn để sửa đổi cáchECPG
Phân tích tiền xử lý và xử lý một tệp.
Để đưa một tệp bên ngoài vào chương trình kèo bóng đá pháp nhúng của bạn, sử dụng:
EXEC kèo bóng đá pháp bao gồmFileName
; Exec kèo bóng đá pháp bao gồm <FileName
; EXEC kèo bóng đá pháp bao gồm "FileName
";
Bộ tiền xử lý kèo bóng đá pháp nhúng sẽ tìm kiếm một tệp có tên
, tiền xử lý và bao gồm nó trong đầu ra C kết quả. Do đó, các câu lệnh kèo bóng đá pháp nhúng trong tệp đi kèm được xử lý chính xác.FileName
.h
TheECPG
Bộ tiền xử lý sẽ tìm kiếm một tệp tại một số thư mục theo thứ tự sau:
/usr/local/bao gồm
/usr/local/pgsql/bao gồm
)/usr/bao gồm
Nhưng khiEXEC kèo bóng đá pháp bao gồm "
được sử dụng, chỉ tìm kiếm thư mục hiện tại.FileName
"
Trong mỗi thư mục, bộ tiền xử lý trước tiên sẽ tìm tên tệp như đã đưa ra và nếu không tìm thấy sẽ tăng thêm.h
đến tên tệp và thử lại (trừ khi tên tệp được chỉ định đã có hậu tố đó).
Lưu ý rằngEXEC kèo bóng đá pháp bao gồm
làkhông12374_12389
#include <FileName
.h
Bởi vì tệp này sẽ không phải tuân theo tiền xử lý của kèo bóng đá pháp. Đương nhiên, bạn có thể tiếp tục sử dụng c#include
Chỉ thị bao gồm các tệp tiêu đề khác.
Tên tệp bao gồm nhạy cảm trường hợp, mặc dù phần còn lại củaEXEC kèo bóng đá pháp bao gồm
Lệnh tuân theo các quy tắc nhạy cảm trường hợp kèo bóng đá pháp thông thường.
Tương tự như Chỉ thị#define
được biết đến từ C, kèo bóng đá pháp nhúng có khái niệm tương tự:
EXEC kèo bóng đá pháp xác địnhtên
; Exec kèo bóng đá pháp xác địnhtên
giá trị
;
Vì vậy, bạn có thể xác định tên:
exec kèo bóng đá pháp xác định have_feature;
Và bạn cũng có thể xác định các hằng số:
EXEC kèo bóng đá pháp Xác định Mynumber 12; Exec kèo bóng đá pháp xác định myString 'abc';
sử dụngUndef
13818_13853
EXEC kèo bóng đá pháp Undef Mynumber;
Tất nhiên bạn có thể tiếp tục sử dụng các phiên bản C#define
và#undef
Trong chương trình kèo bóng đá pháp nhúng của bạn. Sự khác biệt là nơi các giá trị xác định của bạn được đánh giá. Nếu bạn sử dụngexec kèo bóng đá pháp xác định
sau đóECPG
Bộ tiền xử lý đánh giá các định nghĩa và thay thế các giá trị. Ví dụ: nếu bạn viết:
EXEC kèo bóng đá pháp Xác định Mynumber 12; ... EXEC kèo bóng đá pháp Cập nhật tbl set col = mynumber;
sau đóECPG
Sẽ thay thế và trình biên dịch C của bạn sẽ không bao giờ thấy bất kỳ tên hoặc định danh nàoMynumber
. Lưu ý rằng bạn không thể sử dụng#define
14685_14840
Nếu nhiều tệp đầu vào được đặt tên trênECPG
dòng lệnh của người tiền xử lý, các hiệu ứng củaEXEC kèo bóng đá pháp xác định
vàEXEC kèo bóng đá pháp UNEF
Không mang theo các tệp: Mỗi tệp bắt đầu chỉ bằng các ký hiệu được xác định bởi-D
Chuyển sang dòng lệnh.
Bạn có thể sử dụng các chỉ thị sau để biên dịch các phần mã có điều kiện:
EXEC kèo bóng đá pháp IFDEFtên
;
Kiểm tra Atên
và xử lý các dòng tiếp theo nếutên
đã được xác định quaEXEC kèo bóng đá pháp xác định
.tên
EXEC kèo bóng đá pháp IFNDEFtên
;
Kiểm tra Atên
và xử lý các dòng tiếp theo nếutên
cókhôngĐã được xác định quaexec kèo bóng đá pháp xác định
.tên
EXEC kèo bóng đá pháp ELIFtên
;
Bắt đầu một phần thay thế tùy chọn sau mộtEXEC kèo bóng đá pháp IFDEF
hoặctên
EXEC kèo bóng đá pháp IFNDEF
Chỉ thị. Bất kỳ số nào củatên
Elif
Phần có thể xuất hiện. Các dòng sau mộtElif
sẽ được xử lý nếutên
đã được xác địnhvàKhông có phần trước đóIFDEF
/IFNDEF
...endif
Xây dựng đã được xử lý.
EXEC kèo bóng đá pháp khác;
Bắt đầu một phần thay thế cuối cùng, tùy chọn sau mộtEXEC kèo bóng đá pháp IFDEF
hoặctên
EXEC kèo bóng đá pháp IFNDEF
Chỉ thị. Các dòng tiếp theo sẽ được xử lý nếu không có phần trước đótên
IFDEF
/IFNDEF
...endif
Xây dựng đã được xử lý.
EXEC kèo bóng đá pháp ENDIF;
kết thúcIFDEF
/18106_18114
...endif
Xây dựng. Các dòng tiếp theo được xử lý bình thường.
IFDEF
/IFNDEF
...endif
Cấu trúc có thể được lồng, sâu tới 127 cấp độ.
Ví dụ này sẽ biên dịch chính xác một trong baĐặt múi giờ
lệnh:
18564_18739
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không phù hợp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.