新手问个C中用户输入的问题
刚学C不到三个月,问一下各位大神一些控制台用户输入的问题。
现在搞一个简单文件加密的程序,想实现两个效果:
1.文件加密前,要输入密钥,但是用scanf的话,会直接显示在屏幕上,我现在换用getch,然后再用putchar('*')输出星号,这样密钥不会直接显示出来,而用户也知道输入了多少个字符,但有个问题,如果用户按退格想删除前面一个字符,就不好办了,问题主要是显示的星号无法删除,如果我输入一个\b,那么仅仅是光标回去了,并不会删除前面那个星号,当然我接收密钥的字符数组中要删除前面那个字符还是没有问题,这在功能上没有大碍,但是总觉得显示效果上不太好,用户可能并不知道是否删没删,所以想问一下怎么实现scanf那种效果,但是输入的字符不回显的,而是输出星号或别的字符的?
2.加密要输入源文件盒目标文件,当用户输了源文件后,我想用户再输入目标文件时,默认目录就是源文件的目录,比如源文件是D:\file\1.rar,然后要用户输目标文件时,默认就是D:\file\,接下来要用户补全,但是,如果用户不想放在同一个目录里面的话,要能修改这个默认目录,由于第一个问题无法解决,所以这个问题也没解决。
我搜了一下,发现有些人说putchar或者其他方法输出到屏幕上的字符就不能删掉了,真的这样吗。。
现在搞一个简单文件加密的程序,想实现两个效果:
1.文件加密前,要输入密钥,但是用scanf的话,会直接显示在屏幕上,我现在换用getch,然后再用putchar('*')输出星号,这样密钥不会直接显示出来,而用户也知道输入了多少个字符,但有个问题,如果用户按退格想删除前面一个字符,就不好办了,问题主要是显示的星号无法删除,如果我输入一个\b,那么仅仅是光标回去了,并不会删除前面那个星号,当然我接收密钥的字符数组中要删除前面那个字符还是没有问题,这在功能上没有大碍,但是总觉得显示效果上不太好,用户可能并不知道是否删没删,所以想问一下怎么实现scanf那种效果,但是输入的字符不回显的,而是输出星号或别的字符的?
2.加密要输入源文件盒目标文件,当用户输了源文件后,我想用户再输入目标文件时,默认目录就是源文件的目录,比如源文件是D:\file\1.rar,然后要用户输目标文件时,默认就是D:\file\,接下来要用户补全,但是,如果用户不想放在同一个目录里面的话,要能修改这个默认目录,由于第一个问题无法解决,所以这个问题也没解决。
我搜了一下,发现有些人说putchar或者其他方法输出到屏幕上的字符就不能删掉了,真的这样吗。。
...全文
相关推荐
Oracle常用傻瓜问题1000问
大家在应用ORACLE的时候可能会遇到很多看起来不难的问题, 特别对新手来说, 今天我简单把它总结一下, 发布给大家, 希望对大家有帮助! 和大家一起探讨, 共同进步!
c语言新手问题答案
一个C新人提的10个问题的答案,总结了一下。
matlab新手必备80问
matlab 新手matlab 新手matlab 新手matlab 新手matlab 新手matlab 新手matlab 新手matlab 新手
C语言新手入门代码练习
本文档适合刚入手c的小伙伴,里面有鄙人做的练习题,难易不等以供学习
局域网内多用户按密访问共享文件夹及权限设置.pdf
局域网内多用户按密访问共享文件夹及权限设置.pdf


