这个操作可以使用格式化输入很方便的实现,代码如下:
void GetBirthday(char* sID,int* year,int* month,int* day) { sscanf(sID+6,"%4d%2d%2d",year,month,day);//细节:sID+6 } int main(int argc, char* argv[]) { char *str="123456198010102222"; int y,m,d; //提取 GetBirthday(str,&y,&m,&d); //验证结果 printf("%d-%02d-%02d\n",y,m,d); return 0; }
我们就得到了出生日期,如下:
1980-10-10