我正在编写一个程序,将日期字符串转换为三个单独的int变量:年,月,日.
int m,d,y;
sscanf("2011-03-08","%i %*[-] %i %*[-] %i",&y,&m,&d);
cout << y<<" "<<m<<" "<<" "<<d<<std::endl;
sscanf("2011-03-07","%i %*[-] %i %*[-] %i",&y,&m,&d);
cout << y<<" "<<m<<" "<<" "<<d;
Run Code Online (Sandbox Code Playgroud)
如果我转换2011-03-08或2011-03-09,那一天将是0,但对于2011-03-07,06,......那天是7,6,......正如我所料.有人可以解释一下,为什么它不适用于08或09而且只适用于它们?
先感谢您!