กลับไปหน้าบทความ

อ่าน 2 นาที

ฟังก์ชันการแปลตำแหน่ง C

ในด้านการ คำนวณ ฟังก์ชันการแปล C เป็นกลุ่มฟังก์ชันใน ภาษาการเขียนโปรแกรม C ที่ใช้รูทีนการแปลพื้นฐาน [ 1 ] [ 2 ]...

ฟังก์ชันการแปลตำแหน่ง C

ในด้านการคำนวณฟังก์ชันการแปล Cเป็นกลุ่มฟังก์ชันในภาษาการเขียนโปรแกรม Cที่ใช้รูทีนการแปลพื้นฐาน[ 1 ] [ 2 ]ฟังก์ชันเหล่านี้ใช้ในโปรแกรมหลายภาษาเพื่อปรับให้เข้ากับภาษาท้องถิ่นเฉพาะ โดยเฉพาะอย่างยิ่ง วิธีการแสดงตัวเลขและสกุลเงินสามารถแก้ไขได้ การตั้งค่าเหล่านี้ส่งผลต่อพฤติกรรมของฟังก์ชันอินพุต/เอาต์พุตในไลบรารีมาตรฐาน C [ 3 ]

ภาพรวมของฟังก์ชันต่างๆ

ฟังก์ชันและประเภทการแปล C ถูกกำหนดไว้ในlocale.h ( ส่วนหัว clocaleใน C++) [ 4 ] [ 5 ]

การทำงาน คำอธิบาย
ตั้งค่าโลคัลตั้งค่าและดึงค่าภาษา C ปัจจุบัน
โลคัลคอนฟส่งคืนรายละเอียดการจัดรูปแบบตัวเลขและสกุลเงินของภาษาท้องถิ่นปัจจุบัน

การวิจารณ์

สถานะการแปลจะถูกจัดเก็บไว้ทั่วโลก ซึ่งหมายความว่าในโปรแกรมที่กำหนด การดำเนินการทั้งหมดที่เกี่ยวข้องกับภาษาท้องถิ่นสามารถใช้ภาษาท้องถิ่นได้เพียงภาษาเดียวในแต่ละครั้ง ส่งผลให้การใช้งานโปรแกรมที่ใช้ภาษาท้องถิ่นมากกว่าหนึ่งภาษาเป็นเรื่องยากมาก[ 6 ]

ฟังก์ชันเหล่านี้จะเปลี่ยนแปลงพฤติกรรมของprintf , scanf , strtodและฟังก์ชันอื่นๆ ที่มักใช้ในการเขียนข้อมูลที่บันทึกไว้ลงในไฟล์หรือโปรแกรมอื่นๆ ผลที่ได้คือ ไฟล์ที่บันทึกไว้ในภาษาท้องถิ่นหนึ่งจะไม่สามารถอ่านได้ในภาษาท้องถิ่นอื่น หรืออาจอ่านไม่ได้เลยเนื่องจากข้อสมมติฐานต่างๆ เช่น "ตัวเลขไม่มีเครื่องหมายจุลภาค" ซอฟต์แวร์ขนาดใหญ่ส่วนใหญ่จึงบังคับให้ภาษาท้องถิ่นเป็น "C" (หรือค่าคงที่อื่นๆ) เพื่อแก้ไขปัญหาเหล่านี้

ตัวอย่าง

#include <locale.h> #include <stdio.h> #include <stdlib.h>int main ( void ) { /* ก่อนหน้านี้มีการตั้งค่าโลเคลเป็น "C" การเรียกนี้จะตั้งค่า ให้เป็น "โลเคลปัจจุบัน" โดยการอ่านตัวแปรสภาพแวดล้อม: */ setlocale ( LC_ALL , "" );const struct lconv * const currentlocale = localeconv ();printf ( "ในภาษาท้องถิ่นปัจจุบัน สัญลักษณ์สกุลเงินเริ่มต้นคือ: %s \n " , currentlocale -> currency_symbol );คืนค่าEXIT_SUCCESS ; }

ดูเพิ่มเติม

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=C_localization_functions&oldid=1350580934 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ ฟังก์ชันการแปลตำแหน่ง C

ในด้านการ คำนวณ ฟังก์ชันการแปล C เป็นกลุ่มฟังก์ชันใน ภาษาการเขียนโปรแกรม C ที่ใช้รูทีนการแปลพื้นฐาน [ 1 ] [ 2 ]...

ภาพรวมของฟังก์ชันต่างๆ

ฟังก์ชันและประเภทการแปล C ถูกกำหนดไว้ใน locale.h ( ส่วนหัว clocale ใน C++) [ 4 ] [ 5 ]

การวิจารณ์

สถานะการแปลจะถูกจัดเก็บไว้ทั่วโลก ซึ่งหมายความว่าในโปรแกรมที่กำหนด การดำเนินการทั้งหมดที่เกี่ยวข้องกับภาษาท้องถิ่นสามารถใช้ภาษาท้องถิ่นได้เพียงภาษาเดียวในแต่ละครั้ง ส่งผลให้การใช้งานโปรแกรมที่ใช้ภาษาท้องถิ่นมากกว่าหนึ่งภาษาเป็นเรื่องยากมาก [ 6 ]

ตัวอย่าง

#include #include #include int main ( void ) { /* ก่อนหน้านี้มีการตั้งค่าโลเคลเป็น "C" การเรียกนี้จะตั้งค่า ให้เป็น "โลเคลปัจจุบัน" โดยการอ่านตัวแปรสภาพแวดล้อม: */ setlocale ( LC_ALL , "" ); const struct lconv * const currentlocale = localeconv (); printf (...