Microsoft KB Archive/168433

= FIX: Error Using _ttoi64 with Non-Unicode Applications =

Article ID: 168433

Article Last Modified on 10/24/2003

-

APPLIES TO


 * Microsoft Visual C++ 5.0 Enterprise Edition
 * Microsoft Visual C++ 5.0 Professional Edition

-



This article was previously published under Q168433



SYMPTOMS
_ttoi64 is incorrectly defined in TCHAR.H in Visual C/C++ 5.0.



RESOLUTION
Undefine _ttoi64 and redefine it correctly. For the complete solution, see the MORE INFORMATION section of this article.



STATUS
Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This problem was corrected in Visual C++ version 6.0 for Windows.



MORE INFORMATION
_ttoi64 is a define that substitutes _atoi64 (if _UNICODE is not defined) or _wtoi64 if _UNICODE is defined. On line 481 of TCHAR.H is the following:

#define _ttoi64    atoi64

this should be:

#define _ttoi64    _atoi64

You may add the following code to your source file to correct the problem:

// _ttoi64 is incorrectly defined in TCHAR.H, so you need to undefine // it and redefine it correctly to avoid a compile error when // building a non-Unicode version of your application.

#ifdef _UNICODE #ifdef _ttoi64 #undef _ttoi64 #define _ttoi64 _wtoi64 #endif #else #ifdef _ttoi64 #undef _ttoi64 #define _ttoi64 _atoi64 #endif #endif

Keywords: kbbug kbfix kbvc600fix KB168433

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.