Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => ARM => Konuyu başlatan: universitelim54 - 24 Mayıs 2019, 10:44:00

Başlık: Hex sayıyı decimale cevirme C++ ile
Gönderen: universitelim54 - 24 Mayıs 2019, 10:44:00
Mrb. Arkadaslar 32 bitlik bir hex sayım var ve bunu decimale cevirmem gerekiyor. Bununla ilgili örnek kod verebilecek arkadas varmı. yardımını rica ederim.
Başlık: Ynt: Hex sayıyı decimale cevirme C++ ile
Gönderen: Yasin Tekin - 24 Mayıs 2019, 11:01:15
Googlede bulunan ilk örneklerden

#include<iostream>
#include<string.h>
#include<math.h>
using namespace std;
int main ()
{
    char num[20];
    int i, r, len, hex = 0;
    cout << "Enter a hexadecimal number : ";
    cin >> num;
    len = strlen(num);
    for (i = 0; num[i] != '\0'; i++)
    {
        len--;
        if(num[i] >= '0' && num[i] <= '9')
            r = num[i] - 48;
        else if(num[i] >= 'a' && num[i] <= 'f')
                r = num[i] - 87;
             else if(num[i] >= 'A' && num[i] <= 'F')
                    r = num[i] - 55;
        hex += r * pow(16,len);
    }
    cout << "\nDecimal equivalent of " << num << " is : " << hex;
    return 0;
}
Başlık: Ynt: Hex sayıyı decimale cevirme C++ ile
Gönderen: universitelim54 - 24 Mayıs 2019, 11:08:37
bu kod mikroC de calısmıyor.  for (i = 0; num != '\0'; i++) bide bu kodu anlamıs degılım .Calısmama sorunu long hex=0xff gibi bir değişkenim var bunu diziye atayamıyorum .  yukardaki kodda cin >> num; programın verdiği esneklikten dolayı atama yapabilmiş .