2 qm  12 QM__12 于 2016.04.08 10:04 提问

vs2010中使用#define _USE_32BIT_TIME_T无效

如题,最近在看各种关于c++的资料,无意中发现**time__t**类型在VS2005之前是32位,于是我试着让现在已是64位的**time__t**使用原来的32位格式。查完各种资料,据说在文件头加上**#define USE_32BIT_TIME_T**就行,但是我在我写的.cpp文件头上加上这句话,使用**sizeof(time_t)**,竟然还是8而不是4,请问这个是为什么?
以下是程序最上面的那部分:

 #define _USE_32BIT_TIME_T
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <string>
#include <windows.h>
#include <time.h>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])

3个回答

qq423399099
qq423399099   Ds   Rxr 2016.04.08 11:04
已采纳

要放在最前面,你stdafx.h里面应该还包含了别的文件把,放在stdafx.h里面的最前面

QM__12
QM__12 这个好用!!
一年多之前 回复
xiaoxiao1008622
xiaoxiao1008622   2016.04.08 10:34

具体设置方法如下: Property Pages->C/C++->Preprocessor->Preprocessor Definitions增加_USE_32BIT_TIME_T宏.

QM__12
QM__12 这个方法也不错!!
一年多之前 回复
CSDNXIAON
CSDNXIAON   2016.04.08 10:15

VS2005 与_USE_32BIT_TIME_T 预定义宏的问题
_USE_32BIT_TIME_T 注意此宏
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!