다음은 C에서 문자열을 분할 한 다음 char 포인터가 가리키는 첫 번째 정수 값을 반환하고자하는 코드입니다.atoi에서 char 포인터를 사용하는 정수
#include<stdio.h>
void main(){
int month[12]={0};
char buf[]="1853 was the year";
char *ptr;
ptr = strtok(buf," ");
printf("%s\n",ptr);
int value = atoi(*ptr);
printf("%s",value);
}
편집 : 세그먼트 오류가 발생합니다.
문제는 1853 년으로 인쇄하는 것입니다.하지만 이것을 정수 형식으로 변환하고 싶습니다. 포인터를 사용하여 정수로 그 값을 검색 할 수 있습니까?
printf("%s",value);
당신이해야
printf("%d",value);
편집 :
참고 : strtonum은 atoi/atol의 '안전하고 강력한'버전입니다. – Finslicer
주 :'main()'은'int'를 반환하고'(void)'또는'(int, char **)'를 사용합니다. – unwind