Programmeertalen opslaan van gegevens met behulp van een verscheidenheid van verschillende soorten gegevens . Een veel gebruikte gegevenstype voor het opslaan van nummers is het int , die meestal maakt gebruik van een 4 - byte of 8 - byte geheugen segment . Een char is een andere veel gebruikte gegevenstype dat waarden in een 1 - byte geheugen segment slaat . Het omzetten van een int naar een char kan een probleem zijn , want er is niet genoeg ruimte om alle bytes opslaan van een int in een char . Echter , kunt u meerdere tekens gebruiken om een enkel int slaan . Wat je nodig hebt C Compiler , zoals GCC C Integrated Development Environment ( IDE ) , zoals Eclipse CDT Toon Meer Aanwijzingen 1 Opstarten je IDE en maak een nieuw project . Een lege broncode bestand wordt geopend in het belangrijkste werkgebied . Kopen van 2 Definieer een int type dat u dan zal converteren naar een char , en ken het een waarde . Bijvoorbeeld , schrijven iets als dit : unsigned int numberToConvert = 456734645 ; Print 3 van de waarde van dit getal in hexadecimale . U zult dit gebruiken om uw conversie later controleren . U kunt deze uitprinten door het schrijven van deze lijn recht onder de vorige regel : printf ( " % x \\ n " , numberToConvert ) ; 4 Zoek uit hoeveel tekens kunnen passen binnen een int typt op uw computer . Doe dit door het volgende te typen : unsigned int numberOfChars = sizeof ( int ) /sizeof ( char ) op ; 5 Definieer de tekens die je int zal houden . Aangezien een int is dus veel groter dan een char , moet u een array van karakters definiëren als volgt : unsigned char bestemming [ numberOfChars ] ; 6 Maak een lus structuur dat zal lus door de int en waarden toe te voegen aan de char bij elke pass. Het skelet van de lus moet er zo uitzien : for (int i = 0 ; i < numberOfChars ; i + + ) op Twitter { } < br > 7 toewijzen de eerste acht bits van het getal voor de eerste char in de array. Dit werkt alleen als bytes zijn 8 - bits op uw systeem, dat ze meestal zijn . Deze opdracht kan worden geschreven binnen de accolades van de for-lus als volgt : bestemming [ i ] = numberToConvert >> ( 8 * i ) ; Print 8 de waarden van elke char in hexadecimale en controleer of het overeenkomt met de waarde van uw integer . Schrijf de volgende onder de vorige regel code : printf ( " % x \\ n " , bestemming [ i ] ) ; Compile 9 en start het programma ( sommige IDE doen dit wanneer u de toets " F5 " ) geraakt . U zult zien dat u met succes de int hebben omgezet in tekens .
|