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

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

لیترال کاراکتری با چند کاراکتر در ویژوال استودیو

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

با کامپایلر ویژوال استودیو کد زیر یک کد درسته که جواب هم تولید می‌کنه

int x = 'ab';

چرا؟

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

1 پاسخ

0 امتیاز

کامپایلر مایکروسافت لیترال کاراکتری به طول ۲، ۳ و ۴ کاراکتری رو به معنی بایت‌های یک عدد صحیح در نظر می‌گیره و لیترال کاراکتری معمول (طول ۱) رو به عنوان همون کاراکتر یا عدد صحیح ۱ بایتی.

بنابراین 'ab' عدد صحیحی است که بایت اولش 'a' یعنی ۹۷ و بایت دومش 'b' یعنی ۹۸ هست که چون در بایت دوم قرار می‌گیره مقدارش می‌شه ۲۴۸۳۲.

کد زیر همه چی رو مشخص می‌کنه

#include <iostream>
using namespace std;

int main()
{
  int x = 'ab';
  cout<<x<<' '<<(x/256)<<' '<<(x%256)<<' '<<int('a')<<' '<<int('b')<<endl;
  return 0;
}
هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده پنجشنبه ۶ تیر ۱۳۹۲ توسط prodo