octal to binary
Thu Nov 07 2024 17:36:29 GMT+0000 (Coordinated Universal Time)
Saved by
@freefire
#include <stdio.h> #include<stdlib.h> #include<string.h>
//Functiontoconvertdecimalnumberto8-bitbinarystring
voiddecimalToBinary(unsignedintdecimal,char*binaryResult){ int i;
for(i= 7;i>= 0;--i) {
binaryResult[i]=(decimal%2)+'0'; decimal /= 2;
}
binaryResult[8]='\0'; //Null-terminatethebinarystring
}
//FunctiontoconvertIPv4addresstobinary void ipToBinary(char *ipAddress) {
char*token; int octet;
charbinaryResult[33]; //Buffertostore fullbinaryIP address
charbinaryOctet[9];//Buffer
printf("Binary IP address: ");
tostoreeachoctet's
binaryrepresentation
//TokenizetheIPaddressusingstrtok token = strtok(ipAddress, ".");
while(token!=NULL){
octet=atoi(token);//Converttokentointeger if (octet < 0 || octet > 255) {
printf("InvalidIPaddressformat.\n"); return;
}
decimalToBinary(octet,
binaryOctet);
//
Convert
octet
strcat(binaryResult,binaryOctet);//Appendbinaryoctettoresult
strcat(binaryResult, ""); // Add space for readability
token=strtok(NULL,".");
}
binaryResult[strlen(binaryResult)-1]='\0';//Removelastspace
binaryResult); // Print the binary IP address
}
intmain(){
charipAddress[20];//Buffer forIPv4addressinput
//InputIPv4addressfromuser
to
binary
printf("%s\n",
printf("EnteranIPv4address(e.g.,300.522.1.203):"); scanf("%19s", ipAddress);
//CallfunctiontoconvertIPv4 addresstobinary ipToBinary(ipAddress);
return0;
}
Output:
EnteranIPv4address:300.522.1.203
BinaryIPaddress:100101100.100001010.00000001.11001011
content_copyCOPY
Comments