C ไลบรารี - <locale.h>

locale.hส่วนหัวกำหนดการตั้งค่าเฉพาะตำแหน่งเช่นรูปแบบวันที่และสัญลักษณ์สกุลเงิน คุณจะพบมาโครหลายตัวที่กำหนดพร้อมกับโครงสร้างที่สำคัญstruct lconv และฟังก์ชั่นที่สำคัญสองรายการด้านล่าง

แมโครไลบรารี

ต่อไปนี้เป็นมาโครที่กำหนดไว้ในส่วนหัวและมาโครเหล่านี้จะถูกใช้ในสองฟังก์ชันตามรายการด้านล่าง -

ซีเนียร์ มาโครและคำอธิบาย
1

LC_ALL

ตั้งค่าทุกอย่าง

2

LC_COLLATE

ส่งผลต่อฟังก์ชัน strcoll และ strxfrm

3

LC_CTYPE

ส่งผลต่อฟังก์ชันอักขระทั้งหมด

4

LC_MONETARY

มีผลต่อข้อมูลทางการเงินที่ให้มาโดยฟังก์ชัน localeconv

5

LC_NUMERIC

มีผลต่อการจัดรูปแบบจุดทศนิยมและข้อมูลที่จัดเตรียมโดยฟังก์ชัน localeconv

6

LC_TIME

มีผลต่อฟังก์ชัน strftime

ฟังก์ชั่นห้องสมุด

ต่อไปนี้เป็นฟังก์ชันที่กำหนดไว้ในตำแหน่งส่วนหัว h -

ซีเนียร์ ฟังก์ชั่นและคำอธิบาย
1 ถ่าน * setlocale (หมวดหมู่ int, const char * locale)

ตั้งค่าหรืออ่านข้อมูลที่ขึ้นกับตำแหน่ง

2 โครงสร้าง lconv * localeconv (โมฆะ)

ตั้งค่าหรืออ่านข้อมูลที่ขึ้นกับตำแหน่ง

โครงสร้างห้องสมุด

typedef struct {
   char *decimal_point;
   char *thousands_sep;
   char *grouping;	
   char *int_curr_symbol;
   char *currency_symbol;
   char *mon_decimal_point;
   char *mon_thousands_sep;
   char *mon_grouping;
   char *positive_sign;
   char *negative_sign;
   char int_frac_digits;
   char frac_digits;
   char p_cs_precedes;
   char p_sep_by_space;
   char n_cs_precedes;
   char n_sep_by_space;
   char p_sign_posn;
   char n_sign_posn;
} lconv

ต่อไปนี้เป็นคำอธิบายของแต่ละฟิลด์ -

ซีเนียร์ ฟิลด์และคำอธิบาย
1

decimal_point

อักขระจุดทศนิยมที่ใช้สำหรับค่าที่ไม่ใช่ตัวเงิน

2

thousands_sep

อักขระคั่นสถานที่นับพันที่ใช้สำหรับค่าที่ไม่ใช่ตัวเงิน

3

grouping

สตริงที่ระบุขนาดของแต่ละกลุ่มหลักในปริมาณที่ไม่ใช่ตัวเงิน อักขระแต่ละตัวแทนค่าจำนวนเต็มซึ่งกำหนดจำนวนหลักในกลุ่มปัจจุบัน ค่า 0 หมายความว่าจะใช้ค่าก่อนหน้าสำหรับส่วนที่เหลือของกลุ่ม

4

int_curr_symbol

เป็นสตริงของสัญลักษณ์สกุลเงินสากลที่ใช้ อักขระสามตัวแรกคืออักขระที่กำหนดโดย ISO 4217: 1987 และตัวที่สี่คืออักขระซึ่งแยกสัญลักษณ์สกุลเงินออกจากปริมาณเงิน

5

currency_symbol

สัญลักษณ์ท้องถิ่นที่ใช้สำหรับสกุลเงิน

6

mon_decimal_point

อักขระจุดทศนิยมที่ใช้สำหรับค่าเงิน

7

mon_thousands_sep

อักขระการจัดกลุ่มสถานที่หลายพันรายการที่ใช้สำหรับมูลค่าเงิน

8

mon_grouping

สตริงที่มีองค์ประกอบกำหนดขนาดของการจัดกลุ่มหลักเป็นมูลค่าเงิน อักขระแต่ละตัวแทนค่าจำนวนเต็มซึ่งกำหนดจำนวนหลักในกลุ่มปัจจุบัน ค่า 0 หมายความว่าจะใช้ค่าก่อนหน้าสำหรับส่วนที่เหลือของกลุ่ม

9

positive_sign

อักขระที่ใช้สำหรับมูลค่าเงินที่เป็นบวก

10

negative_sign

อักขระที่ใช้สำหรับมูลค่าเงินติดลบ

11

int_frac_digits

จำนวนหลักที่จะแสดงหลังจุดทศนิยมในมูลค่าเงินระหว่างประเทศ

12

frac_digits

จำนวนหลักที่จะแสดงหลังจุดทศนิยมในค่าเงิน

13

p_cs_precedes

ถ้ามีค่าเท่ากับ 1 currency_symbol จะปรากฏก่อนมูลค่าเงินที่เป็นบวก หากมีค่าเท่ากับ 0 currency_symbol จะปรากฏหลังมูลค่าเงินเป็นบวก

14

p_sep_by_space

ถ้าเท่ากับ 1 currency_symbol จะถูกคั่นด้วยช่องว่างจากมูลค่าเงินที่เป็นบวก ถ้าเท่ากับ 0 แสดงว่าไม่มีช่องว่างระหว่าง currency_symbol กับมูลค่าเงินที่เป็นบวก

15

n_cs_precedes

ถ้าเท่ากับ 1 แสดงว่า currency_symbol นำหน้าค่าเงินติดลบ ถ้าเท่ากับ 0 แสดงว่า currency_symbol สำเร็จเป็นค่าเงินติดลบ

16

n_sep_by_space

ถ้าเท่ากับ 1 currency_symbol จะถูกคั่นด้วยช่องว่างจากมูลค่าเงินติดลบ ถ้าเท่ากับ 0 แสดงว่าไม่มีช่องว่างระหว่าง currency_symbol และค่าเงินติดลบ

17

p_sign_posn

แสดงตำแหน่งของเครื่องหมายบวกในมูลค่าเงินที่เป็นบวก

18

n_sign_posn

แสดงตำแหน่งของ negative_sign ในมูลค่าเงินติดลบ

ค่าต่อไปนี้ใช้สำหรับ p_sign_posn และ n_sign_posn -

มูลค่า คำอธิบาย
0 วงเล็บจะห่อหุ้มค่าและ currency_symbol
1 เครื่องหมายนำหน้าค่าและ currency_symbol
2 เครื่องหมายแสดงถึงค่าและ currency_symbol
3 เครื่องหมายจะนำหน้าค่าและ currency_symbol ทันที
4 เครื่องหมายจะสำเร็จค่าและ currency_symbol ทันที