由于你输入第一个scanf("%c",&ch); 时候,输入字符后要按回车
那么该回车在键盘缓冲区保留了,
当执行第二个scanf("%c",&ah); 时候,ah='\n'了,就是ah变量获得那个回车符。
我试试了一下,用fflush(stdin)是可以的。你应该把fflush(stdin)加到第一个scanf("%c",&ch); 后面
#include<stdioh>
#include <timeh>
void readme(void)
{
typedef long __darwin_time_t; / time() ,in _typesh/
typedef __darwin_time_t time_t;
struct tm {
int tm_sec; / seconds after the minute [0-60] /
int tm_min; / minutes after the hour [0-59] /
int tm_hour; / hours since midnight [0-23] /
int tm_mday; / day of the month [1-31] /
int tm_mon; / months since January [0-11] /
int tm_year; / years since 1900 /
int tm_wday; / days since Sunday [0-6] /
int tm_yday; / days since January 1 [0-365] /
int tm_isdst; / Daylight Savings Time flag /
long tm_gmtoff; / offset from CUT in seconds /
char tm_zone; / timezone abbreviation /
};
//time_t time(time_t );
//struct tm gmtime(const time_t ); //获取格林威治(GMT)时间的函数
//struct tm localtime(const time_t ); //此函数获得当前系统时间
}
int main(void)
{
time_t timep;
struct tm p;
time(&timep);
p =localtime(&timep); //此函数获得当前系统时间,是已经进行过时区转化的本地时间
printf("%04d",1900+p->tm_year);
printf("%02d",1+p->tm_mon);
printf("%02d",p->tm_mday);
printf("%02d",p->tm_hour);
printf("%02d",p->tm_min);
printf("%02d\n",p->tm_sec);
return 0;
}
这代码是不是从linux平台上直接复制过来的?因为windows平台的64位大整数用的一个关键字__int64,而使用unsigned long long的好像是Linux
其次,你的线程函数,在Windows平台上是如下的函数原型格式 :
DWORD ThreadFuncName(arg list); //线程函数的返回值不对
再次,我没有编译通过~_~ 可能是编程环境的事,因为一直用的vc60 还么有vs不过,那个传递给线程函数的参数 x1 x2 你得改一下。。
以上就是关于帮忙看看这段小程序全部的内容,包括:帮忙看看这段小程序、谁能帮我编个小程序、这个使用CreateThread创建线程写多线程的程序怎么不对啊,求解,Win32小程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)