学习之路之课程设计
来源:互联网 发布:apache2 解析php 编辑:程序博客网 时间:2024/04/27 19:38
最近学校在开展大一学生的课程设计,也就是写一个简单的管理系统。因为老早就听学长说过大一最后两周要写课程设计,所以自己就早早作了准备。但通过实践看来,有很多在win下可以使用的函数在linux并不能使用(学校要求用linux编程,但不知道学校自己编的书为什么会有这种函数出现)。现在总结一下可以在win下使用,却不能在linux下用的。
(1)最让我费尽的就是getch()函数,我为了可以在linux编程实现像登陆linux系统输入密码的需求,对这个函数下了相当大的功夫。linux下getch()是有的,但是所用的库不是一般的库。我在网上百度到curses.h这个库。里面确实有getch()函数,但是这个库是做图形的。我研究了几个小时写出了我当时挺满意的密码输入函数。这个基本可以实现输入密码时候显示“*”。
char *insert_password(){printf("密码输入为:\n");initscr();cbreak();noecho();//disable echochar a[100], c,b = '*',d[20] = "密码输入:\n";int i= 0; while((c=getchar()) != 13) { a[i] = c; // printw("%c",b); refresh(); printw("%c",b); if( a[i] == 8 ) { printw("/b /b");continue; } i++; } echo();//enable echo; nocbreak(); endwin();i = 0;while( a[i] != 13 ) {i++;}a[i] = '\0';getchar();printf("%s\n",a); return a;}
接着几天,我都心情大好。有一天晚上,自己又重新测试一下程序时候,却出现了差错。这个函数是用不成了。当时的问题是:因为它是自己重新打开的一个窗口,在这个新窗口上进行密码的输入并且同时显示“*”。在这个窗口上我想像prntf("")函数一样打印语句,但是printw()却不能实现。因此,我还是返回到在terminal上,用system("stty -echo")函数将屏幕显示暂时关闭。
当时学习curses库函数时候,参照的是这个博客:http://www.cnblogs.com/dandingyy/archive/2012/08/23/2651644.html 感觉里面讲的很详细。
(2)在课本上,在文件章节中,有一个filelength()函数,这个也是用不了的。(也许在别的库里我不知道的...) 但我的观点是linux下wc命令很好用干吗还要在程序中用filelength()函数.
第一次发博客毫无经验,如有冒犯,请海涵....
- 学习之路之课程设计
- Java课程设计之学习成绩管理系统
- 学校课程设计之我见
- C++课程设计 之 俄罗斯方块
- C++课程设计 之 俄罗斯方块
- 课程设计之11
- 课程设计之题目4
- 课程设计之霍夫曼编码
- 课程设计之成绩管理系统
- 课程设计之学生成绩管理系统
- 课程设计之学生成绩管理系统
- 课程设计之通讯录管理
- 【JAVA 课程设计 之 万年历】
- 课程设计之学生成绩管理系统
- 讲师课程设计之问题分析
- 课程设计之算术表达式求值
- 课程设计之航空订票系统
- 课程设计之我所见
- Android xml之pull解析
- 第七周作业
- QT连接各种数据库报错解决
- 共享将。
- VC2008如何生成及使用DLL(完整版)
- 学习之路之课程设计
- struts2 验证框架使用步骤
- 渐渐变成淡紫
- .net 控件开发常见的特性总结
- Web服务器管理系列:10、文件夹安全设置
- LINUX系统的特点
- js 无提示自动定时关闭页面
- 联想A800新蜂ROM刷机包 官方4.0.4优化 精简省电稳定 V1.2
- Insertion Sort List & Gas Station & Distinct Subsequences