dönüştürme char.İkili ben ikili haline kömürü dönüştürmek için aşağıdaki kodu kullanabilirsiniz, ben bir char bir ikili sayı dönüştürmek çalışıyorlar c
Sorun şu ki, nasıl geri alacağımı bilmiyorum, bu ikili sayıyı almak ve onu ilk karaktere dönüştürmek istiyorum. Folliwing kodunu kullanıyorum ama çekirdek bir problem yaratıyor.
exaple içinchar subbuff[9];
memcpy(subbuff, &fichero[0], 8);
subbuff[8] = '\0';
for(int k=8;k<fichero_len;k+=8){
char c = strtol(subbuff, 0, 2);
printf("%s = %c = %d = 0x%.2X\n", subbuff, c, c, c);
memcpy(subbuff, &fichero[k], k+8);
subbuff[8] = '\0';
}
dize hola "" ilk kod "00010110111101100011011010000110"
gösterir ama ikinci kodun içine koymak dönüştürmek edin:
const char *hola="00010110111101100011011010000110";
char subbuff[16];
memcpy(subbuff, hola[0], 8);
subbuff[8] = '\0';
for(int k=8;k<strlen(hola);k+=8){
char c = strtol(subbuff, 0, 2);
printf("%s = %c = %d = 0x%.2X\n", subbuff, c, c, c);
memcpy(subbuff, &hola[k], k+8);
subbuff[8] = '\0';
}
bir ana sorunu oluşturur
bir [MCVE] gösteriniz (http://stackoverflow.com/help/mcve). –
En az 16 baytlık bir kopyayı "char subbuff [9]" dizinine kopyalıyorsunuz. –