A problem with a class Screen

I found on the Web a simple class Screen as follows:

 /*———————————————— * s c r e e n . h * * A class to manage an ANSI text screen. Allows moving to * an x, y location and clearing the screen. *  * Copyright 1996 by Interface Technologies, Inc.  * All Rights Reserved. *———————————————-  */#ifndef __SCREEN_H#define __SCREEN_H#include class Screen{public:    Screen( )    {    }    void GotoXY( int x, int y )    {        cout << "33[" << y            << ";" << x << "H";    }    void CharXY( int x, int y, char c)    {        GotoXY( x, y );        cout << c;    }    void Clear()    {        cout << "33[2J";    }};#endif
Then I wrote a little test:
#include “screen.h”void main(){     Screen s;     s.CharXY(10,40,’A’);}
It runs (on MS-DOS), but ‘A’ is displayed on the very first position of the screen.

Can you explain the implementation of GotoXY() and why the class does not work?

As the comment in the class says, it manages ANSI screens, so it does not workon the DOS platform.

ANSI terminals understand special chars which when printed to them, cause theterminal to treat it as a command rather than print it out. This programuses these special chars to achieve the same. There is a file inDOS called ANSI.SYS that you can load from the config.sys file by sayingdevice=ansi.sys, and that makes the shell understand ANSI control chars.

Also, your argument to CharXY may need to be in range with the terminal. Remember, the first argument is the column and the second is the row.

Hope that helps.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin


The Latest

technology leadership

Why the World Needs More Technology Leadership

As a fact, technology has touched every single aspect of our lives. And there are some technology giants in today’s world which have been frequently opined to have a strong influence on recent overall technological influence. Moreover, those tech giants have popular technology leaders leading the companies toward achieving greatness.

iOS app development

The Future of iOS App Development: Trends to Watch

When it launched in 2008, the Apple App Store only had 500 apps available. By the first quarter of 2022, the store had about 2.18 million iOS-exclusive apps. Average monthly app releases for the platform reached 34,000 in the first half of 2022, indicating rapid growth in iOS app development.

microsoft careers

Top Careers at Microsoft

Microsoft has gained its position as one of the top companies in the world, and Microsoft careers are flourishing. This multinational company is efficiently developing popular software and computers with other consumer electronics. It is a dream come true for so many people to acquire a high paid, high-prestige job