Files
lab1_git/myatoi.c
2025-10-04 15:12:10 +03:00

40 lines
721 B
C

#include <stdio.h>
#include <ctype.h>
#include <string.h>
int myatoi(char *instr) {
int sign = 1;
if (*instr == '-') {
sign = -1;
instr++;
}
for (; *instr != '\0'; instr++) {
if (!isdigit(*instr)) {
return 0;
}
}
int num = 0;
instr -= strlen(instr);
while (*instr >= '0' && *instr <= '9') {
num = num * 10 + (*instr - '0');
instr++;
}
return num * sign;
}
int main() {
char input[] = "-2890";
int number = myatoi(input);
printf("Converted number is: %d\n", number);
char bad_input[] = "2890kjdfshdfsh";
number = myatoi(bad_input);
printf("Bad input result: %d\n", number);
return 0;
}