# Native Code > برنامه نویسی با C > برنامه نویسی با MFC و ++Visual C > سوال: تبديل کد اسکی به عدد

## noshin156

سلام
من يه كد اسكي دارم كه مي خوام تبديلش كنم به عدد
مثلا برنامه زير رو در نظر بگيريد:
char str[2]=(char)170170 كد اسكي aa هستش حالا زماني كه من مي خوام اين رو به عدد دسيمالش تبديل كنم به مشكل برميخورم چون از دستور زير استفاده مي كنم:unsignedlong t
t=strtoul (c,NULL,16) ;2
چون كد اسكي 170 در مبناي 10 معادل ندارد بنابراين مقدارt برابر 0 است!حالا من مي خوام اين كد اسكي رو ابتدا تبديل كنم به مقداري كه براي مبناي 10 قابل فهم باشه سپس تبديلش كنم به عدد يعني همين 170 رو تبديل كنم به كد اسكي دو تا a بعد تبديلش كنم به مبناي 10
اميدوارم منظورم رو رسونده باشم
با تشكر

----------


## mehdi.mousavi

سلام.
مطمئن نیستم درست متوجه سوالتون شده باشم، اما به چند خط کد زیر توجه کنید:

int val1 = 170;  //val1 == 170
int val2 = 0xAA; //val2 == 170
int val3 = strtoul("0xAA", NULL, 16); //val3 == 170
int val4 = 0252U; //val4 == 170

اینجا، نتیجه کلیه متغیرها 170 دسیمال خواهد بود (احتمالا شما خط سه مد نظرتون بوده).

موفق باشید.

*پاورقی:* لطفا عناوین مناسبی برای سوالات خود انتخاب کنید. "تبدیل" هرگز یک عنوان مناسب محسوب نمیشه! در ضمن، با کمال احترام، بهتون پیشنهاد می کنم کتابی تهیه کنید تا با زیر و بم زبان C آشنا بشید. اینطوری که شما پیش میرید، در آینده ای بسیار نزدیک به مشکلات متعددی خواهید خورد.

----------

