In c hexzahl in char arr?

1 Antwort

Deine Frage ergibt keinerlei Sinn und ist total konfus.

2 Hexstellen repräsntieren einen char, ich kann folgerichtig ein 16-Bit Wort mit 4 Hexstellen repräsentieren. Will ich diese Repräsentation speichern, dann brauche ich einen char je Symbol bei einer ASCII-Kodierung. Nutze ich 2 chars, dann kann ich das 16-Bit Wort darin speichern, zwei aufeinanderfolgende chars sind genau das (vorbehaltlich der Endianess versteht sich).


ulidecktauf 
Fragesteller
 30.01.2023, 16:46

also ich will nur die länge speichern bzw. ne int zshl

int a = 10;

jetzt will ich ein char array haben, dass diese 10 repräsentiert, natürlich nicht char array = {'1', '0'};

denn so kann ich nur zahlen bis 99 haben, ich möchte aber zahlen der größe irgendwas mit 60000 haben (2^16-1 wegen 0xFFFF, also 65535);

also was ich mir vorgestellt habe wäre

char array = {'NUL ^@','LF ^J'}

0
KarlRanseierIII  30.01.2023, 16:52
@ulidecktauf

Du möchtest also im Endeffekt den 16-Bit Wert in 2 8-Bit Werte teilen?

first=(c & 0xFF00) >> 8;
second=c && 0X00FF;

Was ich hier First udn Second nenne ikönnten auch chars eines Arrays sein.

P.S.: Aber das könntest Du auch je nach Endianess mit eienr direktne Zuweisung erreichen.

2