How to hide console cursor in c?

BRHSM picture BRHSM · May 8, 2015 · Viewed 19.5k times · Source

I have a simple C program that represents a loading screen within the console but I can't get the cursor to hide. I tried cranking up the speed of the sleep function so that the cursor timer would be reset and the cursor would be gone but that doesn't work.

Any tips on how to hide the cursor.

Code:

#include <stdio.h>
#include <stdlib.h>

const int TIME = 1;

int main(int argc,char *argv[]){
    int i;
    while (1){
        printf("loading");
        for (i=0;i<3;i++){
            sleep(TIME);
            printf(".");
        }
        sleep(TIME);
        printf("\r");
        system("Cls");
        sleep(TIME);
    }
}

Answer

hamish sams picture hamish sams · Mar 23, 2019

To extend on Bishal's answer:

To hide the cursor: printf("\e[?25l");

To re-enable the cursor: printf("\e[?25h");

Source