При попытке выполнить операцию сравнения двух целых чисел возникает ошибка. Как исправить эту ошибку?
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>
#include <math.h>
void rev(const char* const c)
{
if (*c)
{
rev(c + 1);
putchar(*c);
}
}
int strfind(const char* const c, char* a) {
}
int Convert() {
setlocale(LC_ALL, "Rus");
char alph[36] = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
int s1, s2;
char num[37], result[10000] = "";
printf("Введите систему счисления числа, которое надо преобразовать \n");
scanf("%d", &s1);
printf("Введите число до 36 символов \n");
scanf("%s", &num);
printf("Введите систему счисления числа, которое надо преобразовать \n");
scanf("%d", &s2);
long numInTenSys = 0;
int n = strlen(num);
num[n] = 0;
long preresult;
long preresult2;
int substring;
for (int i = 0; i < n; i++) {
preresult = pow(s1, (n - i -1));
substring= num[i];
preresult2 = strchr(alph, substring) - alph;
numInTenSys += preresult*preresult2;
}
int mod, div;
while (1) {
mod = numInTenSys % s2;
div = numInTenSys / s2;
strcat(result, alph[mod]);
if (div < s2) { // Здесь возникает ошибка
strcat(result, alph[div]);
break;
}
numInTenSys = div;
}
rev(result);
printf("%s", result);
return 0;
}