mardi 4 août 2015

Eclipse error when trying to run C code

I'm trying to understand binary and hexadecimal numbers. I want to know why my program won't launch in eclipse. It gives me this error:

launch has encountered a problem

It was running when i used int. My computer is 64bit. I'm trying to understand hardware. I need to know what I'm doing wrong. What can I improve on? Is it okay to declare buffer as a global variable? Thanks.

My code is here.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char * convertBase(unsigned long int numberToConvert, long int base)
{

    char buffer[65];
    char *pConvertedNumber;
    char allValues[] = "0123456789abcdef";

    pConvertedNumber = &buffer[sizeof(buffer)-1];

    *pConvertedNumber = '\0';

    do {

        int value = numberToConvert % base;

        pConvertedNumber = pConvertedNumber - 1;

        *pConvertedNumber = allValues[value];

        numberToConvert /= base;

    } while(numberToConvert != 0);

    printf("%s", pConvertedNumber);

    return pConvertedNumber;
}

int main(void){

    unsigned long int numberOne = 1000000000;
    printf("\n%ld in Base 16 = ", numberOne);
    convertBase(numberOne, 16);

    printf("\n");

return 0;
}



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire