Enviado em 23/06/2017 - 21:37h
EDIT: Nem sei se o termo emulação está correto./*
* [dkbhit.c]
* Simula a função kbhit().
*
* [Autor]
* Daemonio (Marcos Paulo Ferreira)
* undefinido at gmail com
* https://daemoniolabs.wordpress.com
*
* Versão 1.0, by daemonio @ Thu Dec 27 20:40:22 BRST 2012
*/
#include <stdio.h>
#include <unistd.h>
#include <termios.h>
void init_attr(void) ;
void close_attr(void) ;
int kbhit(void) ;
struct termios old_attr, new_attr;
void init_attr(void) {
/* Obtém as configurações atuais. */
tcgetattr(0,&old_attr);
new_attr=old_attr;
/* Desliga modo canônico. */
new_attr.c_lflag &=~ICANON ;
/* Desliga ecoamento. */
new_attr.c_lflag &= ~ECHO;
new_attr.c_cc[VTIME]=0 ;
new_attr.c_cc[VMIN]=0 ;
}
/* Retorna configurações antigas. */
void close_attr(void) {
tcsetattr(STDIN_FILENO,TCSANOW,&old_attr);
}
int kbhit(void) {
int c ;
tcsetattr(STDIN_FILENO,TCSANOW,&new_attr);
c = getchar() ; /* retorna EOF se nada foi pressionado */
tcsetattr(STDIN_FILENO,TCSANOW,&old_attr);
return c ;
}
int main(void) {
int flag_ler_nome = 0;
char nome[20] ;
init_attr() ;
while(1) {
flag_ler_nome = kbhit() ;
if(flag_ler_nome != EOF) {
printf("Digite seu nome: ") ;
fgets(nome, sizeof nome, stdin) ;
}
printf("** Outros processamentos **\n") ;
}
close_attr() ;
return 0;
}
/* EOF */
#include <ncurses.h>
int main(void) {
initscr(); /* Start curses mode */
printw("Hello, World!"); /* Print Hello. World! */
refresh(); /* Print it on to the real screen */
getch(); /* Wait for user input */
endwin(); /* End curses mode */
return 0;
}
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Criando uma VPC na AWS via CLI
Multifuncional HP imprime mas não digitaliza
Dica básica para escrever um Artigo.
Como Exibir Imagens Aleatórias no Neofetch para Personalizar seu Terminal
Pq me aparece isso quando fui atualizar o Ubuntu 24.10 no terminal? (3)
Pegar a ultima ocorrencia viva (2)
como coloco para instalar com esse erro. (13)
Alguém sabe de documentos de texto e /ou vídeo aulas de certificações ... (1)