works:programmer:cpp:int-to-bitset
Си - Сконвертировать int в биты
На ru.stackoverflow задавали вопрос, как сконвертировать int в биты строкой. Мой личный пример. Весьма прилично рабочий, поэтому и пополнил эту коллекцию.
#include <stdio.h> #include <stdlib.h> #include <string.h> #define BITS_IN_INT sizeof(int) * 8 void toBitset(int in, char *out) { int c, d, t; t = 0; if (out == NULL) { exit(EXIT_FAILURE); } for (c = BITS_IN_INT-1 ; c >= 0 ; c--) { d = in >> c; *(out+t) = (d & 1) ? '1' : '0'; t++; } *(out+t) = '\0'; } int main() { const unsigned size = BITS_IN_INT + 1; char buffer[size]; memset(buffer, 0, size); int value; scanf("%d+", &value); toBitset(value, buffer); printf("%s\n", buffer); return 0; }
works/programmer/cpp/int-to-bitset.txt · Последнее изменение: 2023/07/06 06:46 — 127.0.0.1