PDA

View Full Version : نوع داده متن فارسی در win32



ayub_coder
چهارشنبه 27 شهریور 1392, 15:47 عصر
با سلام
من تازه برنامه نویسی با win32 رو شروع کردم.
برای اینکه بخوام یه متن فارسی رو در نمایش بدم (چه تو مسج باکس چه داخل فرم) از چه نوع دیتا تایپی باید استفاده کنم؟ دیتاتایپ وین 32 برای رشته ها چرا اینقد زیاده؟

LPSTR
LPCSTR
LPWSTR
TCHAR

این رشته فارسی رو اگه بخوام فرمت بندی کنم از چه تابعی باید استفاده کنم؟
printf
fprintf
sprintf

با تشکر از راهنمایی

ayub_coder
چهارشنبه 03 مهر 1392, 20:53 عصر
پس از چند روز خودم پیدا کردم می نویسم برای کسانی که دنبالش هستن
برای ذخیره رشته ها باید از wchar_t استفاده کنیم. این یعنی کارکتر طویل یا wide char که به عبارتی میشه توشون حروف یونکد نوشت.
در کل نوع متغییر هایی که توشون w استفاده شده به معنای یونکد هستن
برای فرمت بندی هم میشه از swprintf استفاده کرد

نمونه کد


wchar_t str[1024];

swprintf(str, TEXT("متخصات صفحه نمایش عرض %i و ارتفاع %i می باشد"), cxScreen, cyScreen);