Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang cho8833_8842Phiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

35.9. Chỉ thị tiền xử lý

Một số chỉ thị tiền xử lý có sẵn để sửa đổi cáchECPGPhân tích tiền xử lý và xử lý một tệp.

35.9.1. Bao gồm các tệp

Để đưa một tệp bên ngoài vào chương trình cách đọc kèo bóng đá nhúng của bạn, sử dụng:

EXEC cách đọc kèo bóng đá bao gồmFileName11178_11203FileName;
EXEC cách đọc kèo bóng đá bao gồm "FileName";

Bộ tiền xử lý cách đọc kèo bóng đá nhúng sẽ tìm kiếm một tệp có tênFileName.h11480_11614

TheECPGBộ 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:

  • Thư mục hiện tại
  • /usr/local/bao gồm
  • PostgreSQL bao gồm thư mục, được xác định tại thời gian xây dựng (ví dụ:/usr/local/pgsql/bao gồm)
  • /usr/bao gồm

nhưng khiEXEC cách đọc kèo bóng đá bao gồm "FileName"được sử dụng, chỉ tìm kiếm thư mục hiện tại.

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ẽ nối tiếp.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 cách đọc kèo bóng đá bao gồmkhônggiống như:

#include <FileName.h

Bởi vì tệp này sẽ không phải chịu sự tiền xử của lệnh cách đọc kèo bóng đá. Đương nhiên, bạn có thể tiếp tục sử dụng c#includeChỉ thị bao gồm các tệp tiêu đề khác.

Lưu ý

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 cách đọc kèo bóng đá bao gồmLệnh tuân theo các quy tắc nhạy cảm trường hợp cách đọc kèo bóng đá thông thường.

35.9.2. Các chỉ thị xác định và hoàn tác

Tương tự như Chỉ thị#defineđược biết đến từ C, cách đọc kèo bóng đá nhúng có khái niệm tương tự:

exec cách đọc kèo bóng đá xác địnhtên;
Exec cách đọc kèo bóng đá xác địnhtên Value;

Vì vậy, bạn có thể xác định tên:

exec cách đọc kèo bóng đá xác định have_feature;

Và bạn cũng có thể xác định các hằng số:

EXEC cách đọc kèo bóng đá Xác định Mynumber 12;
Exec cách đọc kèo bóng đá xác định myString 'abc';

sử dụngUndefĐể xóa định nghĩa trước:

EXEC cách đọc kèo bóng đá 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#undefTrong chương trình cách đọc kèo bóng đá 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 cách đọc kèo bóng đá xác địnhsau đóECPGBộ 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 cách đọc kèo bóng đá Xác định Mynumber 12;
...
EXEC cách đọc kèo bóng đá Cập nhật tbl set col = mynumber;

sau đóECPGSẽ 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#Define15047_15202

Nếu nhiều tệp đầu vào được đặt tên trênECPGdòng lệnh của người tiền xử lý, các hiệu ứng củaEXEC cách đọc kèo bóng đá xác địnhEXEC cách đọc kèo bóng đá UNEFKhô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-DChuyển sang dòng lệnh.

35.9.3. IFDEF, IFNDEF, OTE, ELIF và ENDIF Chỉ thị

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 cách đọc kèo bóng đá IFDEFtên;

Kiểm tra Atên16167_16204tênđã được tạo bằngEXEC cách đọc kèo bóng đá xác địnhtên.

EXEC cách đọc kèo bóng đá IFNDEFtên;

Kiểm tra Atênvà xử lý các dòng tiếp theo nếutênkhôngĐã được tạo bằngexec cách đọc kèo bóng đá xác địnhtên.

EXEC cách đọc kèo bóng đá khác;

Bắt đầu xử lý một phần thay thế cho một phần được giới thiệu bởiEXEC cách đọc kèo bóng đá IFDEFtênhoặcEXEC cách đọc kèo bóng đá IFNDEFtên.

EXEC cách đọc kèo bóng đá ELIFtên;

Kiểm tratênvà bắt đầu một phần thay thế nếutênđã được tạo bằngexec cách đọc kèo bóng đá xác địnhtên.

EXEC cách đọc kèo bóng đá endif;

Kết thúc phần thay thế.

Ví dụ:

EXEC cách đọc kèo bóng đá IFNDEF TZVAR;
EXEC cách đọc kèo bóng đá đặt thời gian thành 'gmt';
Exec cách đọc kèo bóng đá elif tzname;
EXEC cách đọc kèo bóng đá đặt thời gian thành tzname;
EXEC cách đọc kèo bóng đá khác;
EXEC cách đọc kèo bóng đá đặt thời gian thành tzvar;
Exec cách đọc kèo bóng đá endif;