PDA

View Full Version : wchar_t این نوع متغییر را باید چه کار کرد کمک کمک!!!



حامی2
پنج شنبه 20 بهمن 1384, 02:39 صبح
با سلام به دوستان

من را بیچاره کرده این wchar_t ؟؟؟

من هرچی اکتیو ایکس را وارد BCB6 می کنم که در آن متغییرهای از نوع String داره در BCB6 از نوع wchar_t قرار میده هر چه هم تلاش می کنم بهش مقدار بدم نمی شه؟


من را راهنمایی کنید

یا طریقه مقدار دهی بهش را بگویید یا چه جوری میشه همون string‌یا char را حالیش کرد.

در vc++6 همان CString معادلش هست و در delphi هم char اما در bcb6 باید چه کرد

مثلا در اکتیو ایکس کامپوننت capture اسم فایل عکس گرفته شده از تصویر را از من wchar_t می خواهد باید بهش چی بدم تا قبول کنه و عکس را ذخیره کنه

با تشکر فراوان

Inprise
پنج شنبه 20 بهمن 1384, 03:08 صبح
اولا" که CString در MFC معادل Char دلفی یا wchar_t در CPP نیست ؛ و اما جواب سوالت : wchar_t یک کاراکتر هست ، یونیکد . پس اگر بخواهی یک رشته رو به این صورت نگهداری کنی به آرایه ای از wchar_t نیاز داری ، میتونی بسادگی :


wchar_t *urUniChar = new wchar_t[someSize];
این آرایه رو تولید و مقدار دهی اش بکنی و ازش استفاده کنی . ویندوز متغیر دیگری بنام LPWSTR داره که در عمل همینکار رو انجام میده . یعنی آرایه ای از wchar_t ها و در هر حال اینها ارتباطی با BCB نداره و در همهء محیطها همینطوره . اگه مایل باشی میتونی از امکانات خاص VCL (http://www.functionx.com/bcb/topics/strings.htm)هم استفاده کنی ...