C语言 控制台 密码 显示为*号

//输入密码时隐藏为*号 
//pwd为返回值
void hidden_input(char* pwd){
	char input_char;
	int index = 0;
	fflush(stdin);//清除输入缓存
	//密码显示*号且支持退格  
	while((input_char = getch()) != '\r'){//换行符 
		if(input_char == '\b'){//退格键 
			if(index < 0)
				continue;
			if(index > 0){
				putchar('\b');
				putchar(' ');
				putchar('\b');
				index--;
			}	
		}else{
			printf("*");
			pwd[index++] = input_char;
		}
	}
	pwd[index] = '\0';//结束符 
}

 

 

你可能感兴趣的:(C语言)