Đặt ngôn ngữ cho một lần thực hiện chương trình


11

Hoàn thành C ++ i18n gettext () Xin chào thế giới Ví dụ. đặt biến môi trường LANG bằng cách sử dụng xuất trước khi thực hiện chương trình (Linux):

export LANG=es_MX.utf8
./hellogt

Có cách nào để thiết lập ngôn ngữ trong khi thực hiện hellogt, như đối số dòng lệnh không? Điều này sẽ có ích cho các chương trình thử nghiệm.

Câu trả lời:


11

Trong ksh, bash và các shell tương tự,

LANG=es_MX.utf8 ./hellogt

sẽ LANG=es_MX.utf8chỉ thiết lập cho việc gọi ./hellogt.

Đáng chú ý hơn, có một chương trình gọi là env

env LANG=es_MX.utf8 ./hellogt

Nó sẽ đặt các biến môi trường và chạy chương trình được chỉ định. Điều này hoạt động trong tất cả các shell, bao gồm cshvà truyền thống sh(không hỗ trợ phương pháp đầu tiên).


8

Bạn có ý nghĩa như:

LANG=es_MX.utf8 ./hellogt

? Hoặc có thể bạn có nghĩa là bạn muốn phân tích dòng lệnh (argv), tìm ngôn ngữ được truyền vào và chuyển nó sang setlocale?


Đối với các chương trình thử nghiệm như vậy mà không sửa đổi mã.
CW Holeman II

Vì vậy, cái đầu tiên.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.