Microsoft KB Archive/39089

From BetaArchive Wiki

_gettextposition() Should Not Be Used with printf()


5.10 6.00 6.00a 6.00ax 7.00 | 5.10 6.00 6.00a | 1.00 1.50 MS-DOS | OS/2 | WINDOWS kbprg ---------------------------------------------------------------------- The information in this article applies to: - The C Run-time (CRT), included with: - Microsoft C for MS-DOS, versions 5.1, 6.0, 6.0a, and 6.0ax - Microsoft C for OS/2, versions 5.1, 6.0, and 6.0a - Microsoft C/C++ for MS-DOS, version 7.0 - Microsoft Visual C++ for Windows, versions 1.0 and 1.5 ---------------------------------------------------------------------- SUMMARY ======= When the graphic routines are being used in a program, they should be used for all output to the screen, including text output. Other C run-time functions for output should not be used. If a C program uses the run-time function _gettextposition(), the function _outtext() should be used to output text to the screen. Using the function printf() causes overwriting of text or blank lines to be inserted on the video screen. MORE INFORMATION ================ The following program results in unpredictable output: #include #include main() { struct rccoord rcoord; _clearscreen(_GCLEARSCREEN); printf("11\n"); printf("22222222\n"); printf("333333\n"); printf("fourth line\n"); printf("fifth line\n"); rcoord=_gettextposition(); printf("6666\n"); printf("77777777\n"); } The work around is use _outtext(), or a combination of sprintf() and _outtext() instead of printf(). Additional reference words: kbinf 5.10 6.00 6.00a 6.00ax 7.00 1.00 1.50 KBCategory: kbprg KBSubcategory: CRTIss

Keywords : kb16bitonly
Issue type :
Technology : kbVCsearch kbAudDeveloper kbCRT

Last Reviewed: May 5, 2001
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.