Hi,
I wrote a program for Windows environment. It shows a menu to choice some operations to do. Once an operation is done, it cleans the screen with a system("cls") call, and the menu is shown again.
I'd like to just clean half screen, so the program doesn't need to call again the print menu procedure.
I read there was something like this:
But I also read it is deprecated?
Is there any function or way to do this in C?
Are there operating systems which system calls allow to do this?
Thanks in advance.
Last edited by Luke Bonham; 03-28-2011 at 06:05 AM..
It's not "depreciated" -- C never had it. I don't think Windows ever had it, either. Certain odd compilers like Borland's may have provided it through a nonstandard library and conio.h, and now you're learning what "portable" means.
Fortunately since you're printing to an actual terminal that understands actual escape sequences, nothing prevents you from [url=https://www.unix.com/302356413-post3.html]making your own[/url]. Just print the right characters and your terminal, if capable, should obey it.
[url=http://ascii-table.com/ansi-escape-sequences.php]here's[/url] a table of ASCII escape sequences to help you build on the functions I linked above. To clear a line, for example:
[code]void clearline(void)
{
/* The \r moves it to the beginning of the line */
printf("\r\033[K");
}[/code] Also note you may need to fflush() after calling these functions to make sure they're printed to the screen right when you want them to be, instead of after the next newline you print. Or just fprintf(stderr, "..."); instead of printf("..."); so it'll never buffer -- though you actually want it to buffer for less flicker. If anything you might want to make the buffer bigger -- you could print a whole screenful of stuff in individual bits, then fflush(stdout); to redraw in one whack.
Oh, you're in Windows. We do have a windows section but this isn't it.
Last edited by Corona688; 03-28-2011 at 12:37 PM..
The windows system call stuff was just an example to introduce my question.
Quote:
I found an implementation of gotoxy:
... This is Windows code.
Not that we mind helping Windows users, but obviously you are programming in Windows, and to say you're not interested in Windows code then use Windows calls in the next breath is a little odd.
If you want to do it portably, look for a windows implementation of the curses or ncurses library, you can find curses in most places in UNIX. A bit of a pain to use, but portable.
Last edited by Corona688; 03-29-2011 at 12:08 PM..
Hello Friends,
I have directory called /tmp. which stores the log files.
Whenever it becomes full, i want to delete half of files from all log files.
even after deleting the files, if space is more than 90% then it should delete rest of half files.
While deleting files, older files... (7 Replies)
I made a screen within a screen.
Is there a way to move the inner screen up one level so that it is at the same level as the first screen running from the shell? (2 Replies)
Hello out there, I got this script that runs partly fine by my crontab. Problem is it gets to the sleep 300(which should be 5 minutes right?) part and never runs the rest of the scripts past that. All individual scripts run just fine. My var/mail file only shows it up to the " echo "Loader Stop... (3 Replies)
VIO Server connected to switch port and running with half duplex speed on one of the shared ethernet adapter. We have verified at switch end and everythings looks good.
Other ethernet adapter in the VIO server are connected and running in Full duplex speed.
Please help me find why this shared... (4 Replies)
Hi,
I'm trying to create a virtual screen, (maybe xvfb? or any other virtual screen buffer) and be able to use Screen Sharing to connect to it.
The setup is that I have a Mac Mini connected to the TV. But when my girlfriend is using Front Row, I can't use Screen Sharing at the same time from... (0 Replies)
I have an odd problem with my internet connection. I think it's software not hardware, but I'm not even certain of that. My best guess is that it relates to my recent installation of KVpnc.
I can't connect to most websites: no ping, nothing in the browser. But other websites I can connect to... (7 Replies)
I have directories full of files that contain dates and times in their names in the format YYYYMMDDhhmm. So like, one of the files is named 199407271609 with no file extension.
I have this script searches a given directory and changes all creation dates of the files to match the date in their... (4 Replies)