Перевод из long в char и обратно - C (СИ)
Формулировка задачи:
Написать функцию для перевода переменной типа long в символьную строку в двоичном представлении ( ltoab( long num, char s[]) ) и тестирующую программу к ней и функцию для обратного перевода(т.е. из символьного массива получить число типа Long)
я сделал первую часть задания, а теперь не очень понимаю, как сделать обратную функцию
#include <stdio.h> void conv(long n, char string[32]) { int c, k, i, y, cnt; y = 0; cnt = 0; char result[32]; for (c = 31, i = 0; c >= 0; c--, i++) { k = n » c; if (k & 1) string[i] = '1'; else string[i] = '0'; } string[31] = '\0'; for (i = 0; i<32; i++) { if (y == 0) { for (;;) { if (string[i] == '0') { i++; } else { y = 1; break; } } } result[cnt] = string[i]; cnt++; } result[cnt] = '\0'; printf("%s\n", result); } int main() { char string[32]; long number; printf("Enter number: "); scanf_s("%d", &number); conv(number, string); return 0; }
Решение задачи: «Перевод из long в char и обратно»
textual
Листинг программы
do r = r*2 + *p - '0' while (*p++);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д