Programmeringsspråk lagra data med hjälp av en mängd olika datatyper . En allmänt använd datatyp för lagring av nummer är int , som vanligtvis använder antingen en 4 - byte eller 8 byte minne segmentet . En röding är ett annat mycket använt datatyp som lagrar värden i en 1 - byte minne segmentet . Konvertera en int till en char kan vara ett problem eftersom det inte finns tillräckligt med utrymme för att lagra alla byte från en int till en röding . Men du kan använda flera tecken för att lagra en enda int . Saker du behöver
C Compiler , såsom GCC
C Integrated Development Environment ( IDE ) , t.ex. Eclipse CDT
Visa fler instruktioner
1
Uppstart IDE och skapa ett nytt projekt . En tom källkod fil öppnas i den huvudsakliga arbetsytan .
2
Definiera en int typ som du kommer att konvertera över till en röding , och tilldela den ett värde . Till exempel skriva något liknande detta :
unsigned int numberToConvert = 456734645 ;
3
Skriv ut värdet av detta nummer i hexadecimalt . Du kommer att använda detta för att verifiera din konvertering senare . Du kan skriva ut det här genom att skriva den här raden precis under den föregående raden :
printf ( " % x \\ n " , numberToConvert ) ;
4
reda på hur många tecken kan passa inuti en int typ på datorn . Gör detta genom att skriva följande :
unsigned int numberOfChars = sizeof ( int ) /sizeof ( char ) ;
5
Definiera tecken som kommer att hålla din int . Eftersom en int är så mycket större än en röding , måste du definiera en char array som denna :
unsigned char destination [ numberOfChars ] ;
6
Skapa en for-loop struktur som kommer att slinga genom int och lägga till värden i röding med varje pass . Skelettet av for-slingan ska se ut så här :
for (int i = 0 ; i. < numberOfChars , i + + ) katalog
{
}
7
tilldela de första åtta bitarna av heltal till den första röding i arrayen . Detta fungerar bara om byte är 8 bitar på ditt system , som de vanligtvis är . Detta uppdrag kan skrivas innanför klamrarna i for-slingan så här :
destination [ i] = numberToConvert >> ( 8 * i) ;
8
Skriv ut värdena för varje röding i hexadecimal och kontrollera att det matchar värdet på din heltal . Skriv följande under föregående kodrad :
printf ( " % x \\ n " , destination [ i] ) ;
9
Kompilera och kör programmet ( vissa IDE göra detta när du trycker på " F5 " tangenten ) . Du kommer att se att du har lyckats konverterat int till tecken .