اطلاعیه

Collapse
No announcement yet.

یه سوال کوچیک

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    یه سوال کوچیک

    سلام

    چجوری میشه []char رو به int تبدیل کرد؟ :rolleyes:

    لطفا راهنماییم کنین
    هر چند پير و خسته دل و ناتوان شدم * * * هر گه که ياد تو کردم جوان شدم :rolleyes:

    #2
    پاسخ : یه سوال کوچیک

    نوشته اصلی توسط J A V A D
    سلام

    چجوری میشه []char رو به int تبدیل کرد؟ :rolleyes:

    لطفا راهنماییم کنین
    سلام
    بله میشه
    میتونید قبل از اینکه از char استفاده کنید عبارت (int) رو جلوش بنویسید.
    دقیقا مشکلتونو شرح بدید تا بهتر بشه نظر داد
    گفت که دیوانه نهی لایق این خانه نهی

    دیدگاه


      #3
      پاسخ : یه سوال کوچیک

      ممنون بابت پاسختون

      من میخوام با تابع زیر یک رشته از مموری بخونم :
      کد:
      fgets(str,7,f);
      str هم از نوع []char باید باشه. حالا میخوام این str (که مثلا کد رنگه = 0x001f) رو تو فرمول زیر بذارم:
      کد:
      tftlcd_write_pixel(0,0,str);
      ولی str تو فرمول بالا باید از نوع int باشه

      حالا چیکار باید بکنم ؟
      هر چند پير و خسته دل و ناتوان شدم * * * هر گه که ياد تو کردم جوان شدم :rolleyes:

      دیدگاه


        #4
        پاسخ : یه سوال کوچیک

        نوشته اصلی توسط J A V A D
        ممنون بابت پاسختون

        من میخوام با تابع زیر یک رشته از مموری بخونم :
        کد:
        fgets(str,7,f);
        str هم از نوع []char باید باشه. حالا میخوام این str (که مثلا کد رنگه = 0x001f) رو تو فرمول زیر بذارم:
        کد:
        tftlcd_write_pixel(0,0,str);
        ولی str تو فرمول بالا باید از نوع int باشه

        حالا چیکار باید بکنم ؟
        اول اینکه str اشاره گر هست. و پارامتر tftlcd_write_pixel باید متغییر از نوع int باشه. ما فرض میکنیم اطلاعات در خونه اول str یعنی str[0] ذخیره شده باشه.

        حالا باید این شکلی تابع tftlcd_write_pixel رو فراخوانی کنی
        کد:
        tftlcd_write_pixel(0,0, (int)str[0]);
        گفت که دیوانه نهی لایق این خانه نهی

        دیدگاه


          #5
          پاسخ : یه سوال کوچیک

          اگه str 0 رو بنویسیم که کاراکتر اول رو (0) برمی گردونه
          هر چند پير و خسته دل و ناتوان شدم * * * هر گه که ياد تو کردم جوان شدم :rolleyes:

          دیدگاه


            #6
            پاسخ : یه سوال کوچیک


            گفت که دیوانه نهی لایق این خانه نهی

            دیدگاه


              #7
              یه سوال کوچیک

              کسی نظری نداره؟ :angry: :angry: :angry:
              هر چند پير و خسته دل و ناتوان شدم * * * هر گه که ياد تو کردم جوان شدم :rolleyes:

              دیدگاه


                #8
                پاسخ : یه سوال کوچیک

                نوشته اصلی توسط J A V A D
                کسی نظری نداره؟ :angry: :angry: :angry:
                من که جوابتونو دادم

                str[0]
                خانه اول آرایه str رو برمیگردونه
                گفت که دیوانه نهی لایق این خانه نهی

                دیدگاه


                  #9
                  پاسخ : یه سوال کوچیک

                  نوشته اصلی توسط Finder_
                  من که جوابتونو دادم

                  str[0]
                  خانه اول آرایه str رو برمیگردونه
                  خب خونه اول آرایه که فقط عدد 0 میشه . من میخوام 0x001f رو برگردونه
                  هر چند پير و خسته دل و ناتوان شدم * * * هر گه که ياد تو کردم جوان شدم :rolleyes:

                  دیدگاه


                    #10
                    پاسخ : یه سوال کوچیک

                    نوشته اصلی توسط J A V A D
                    خب خونه اول آرایه که فقط عدد 0 میشه . من میخوام 0x001f رو برگردونه
                    ببین آرایه مجموعه ای از متغیر هاست که کنار هم قرار گرفتند. شما هر مقداری درون هر خانه از آرایه بریزید داخلش ذخیره میشه و بعدا میتونید از همون خونه اطلاعاتی رو که ریختید استفاده کنید.
                    مثلا توی مثال زیر مقدار 0x1f رو درون خونه اول میریزیم
                    کد:
                    str[0]=0x001f;
                    حالا میخوایم این مقدار رو درون متغییر a بریزیم
                    کد:
                    a=str[0];
                    گفت که دیوانه نهی لایق این خانه نهی

                    دیدگاه


                      #11
                      پاسخ : یه سوال کوچیک

                      سلام.
                      راستش نمیدونم درست فهمیده باشم یا نه.
                      اما اگر رقم به رقم مثلا در مبنای 16 ذخیره کرده باشید احتمالا یه کدی مثل این میتونه جوابگوی کارتون باشه.
                      رقم به رقم یعنی اینکه تو هر خونه از آرایه فقط داده مربوط به یک رقم ذخیره شده.
                      برای مبنای 10 هم میشه راحت با یه ذره تغییر در کد ازش استفاده کرد.
                      این یه برنامه تو کامپیوتر هست که یه رشته از ارقام رو(که اینجا s هست) به عدد تبدیل میکنه(به الگوریتمش توجه کنید):


                      کد:
                      #include<iostream>
                      using namespace std;
                      char s[]="000126A0\0";
                      unsigned long int tabdil(char* a){
                      	unsigned long int b=0;
                      	while(*a != '\0'){
                      		if (*a < 65){
                      			b*=16; // Base is 16. Digit shifting.
                      			b+= ((unsigned long int) *a) - 48; // '0' = 48 --> Ascii value of char variable.
                      		}
                      		else {
                      			b*=16; // Base is 16. Digit shifting.
                      			b+= ((unsigned long int) *a) - 55; // Ascii value of character 'A' = 65 But A represents 10 (A = 10) in hexadecimal --> 65 - 10 = 55
                      		}
                      	a++;
                      	}
                      	return b;
                      }
                      int main(){
                      	unsigned long int x;
                      	x=tabdil(&s[0]);
                      	cout<<x<<'\n';
                      	return 0;
                      }


                      امیدوارم مفید بوده باشه

                      دیدگاه

                      لطفا صبر کنید...
                      X