ここでは、文字列を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);
}
EDIT:セグメント化エラーが発生します。
問題は1853年を印刷していますが、これを整数形式に変換したいのですが、ポインタを使用してその値を整数として取得できますか?
printf("%s",value);
あなたがやるべき
printf("%d",value);
編集:
注:strtonumはatoi/atolの安全で堅牢なバージョンです – Finslicer
注: 'main()'は 'int'を返し、'(void) 'または'(int、char **) 'を取ります。 – unwind