اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

مقایسه‌ی کاراکتر و کاراکتر گسترده

0 امتیاز
375 نمایش

برنامه‌ی زیر equal چاپ می‌کنه که از نظر منطقی خب باید درست باشه. اما سوالم اینه که مطمئن هستیم که روی همه‌ی سیستم‌ها و کامپایلرها مقادیر اسکی توی کاراکتر معمولی و کاراکتر گسترده یکی هستند؟
و مطمئن هستیم که عملگر تساوی به درستی این تساوی رو بررسی می‌کنه؟

#include <iostream>
using namespace std;

int main()
{
  wchar_t wc = L'a';
  char c = 'a';
  if (wc == c) cout<<"equal";
  return 0;
}
هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پرسیده شده جمعه ۳۰ فروردین ۱۳۹۲ در C++ توسط prodo  

1 پاسخ

0 امتیاز

متاسفانه خیر.
با این که هر دوی این نوع داده‌ها در حقیقت عدد صحیح هستند، اما نیازی نداره که یه کاراکتر اسکی در هر دو مقدار ثابتی داشته باشه.
البته استاندارد زبان این رو تضمین می‌کنه که کاراکترهای اسکی در کاراکتر گسترده وجود داشته باشن اما تضمینی بر مساوی بودن مقدارشون نمی‌ده.

هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده پنجشنبه ۱۹ اردیبهشت ۱۳۹۲ توسط prodo