【发布时间】:2017-12-31 14:35:45
【问题描述】:
#include<stdio.h>
#include<conio.h>
#include<string.h>
int main() { {
char sir[3000];
int i;
int suma = 0;
int lungime;
scanf("%s", sir);
lungime = strlen(sir);
char x;
char *pX;
x = sir[2];
pX = &x;
suma = atoi(pX);
return 0;
}
我正在做advenOfCode,Day1。 我的问题是我无法使用 atoi 从字符串中选择某些数字。 根据我的阅读,atoi 需要一个指针作为参数。
如果我读到一些大字符串,例如“111555434536563673673567367....” 长度在 2000 - 3000 之间
我不明白为什么当我打印“suma”时,它不是打印字符串中的某个数字,而是打印一些巨大的整数,比如 83506。
【问题讨论】:
-
Don't use
atoi。请改用strtol