资源简介
在Linux操作系统下,用c语言写的一篇通讯录,主要有增删改查的功能,里面有数据库的表,各位可以借鉴一下。
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
#include
#define portnumber 3333
struct message
{
int id;
char name[20];
char age[20];
char tel[20];
char addr[20];
int action;
};
int main(int argc char *argv[])
{
int sockfd;
char buffer[1024];
struct sockaddr_in server_addr;
struct hostent *host;
int nbytes;
struct message msg;
int n_read;
int i;
char ch[10];
/*使用hostname查询host名字*/
if(argc!=2)
{
fprintf(stderr“Usage:%s hostname \a\n“argv[0]);
exit(1);
}
if((host=gethostbyname(argv[1]))==NULL)
{
fprintf(stderr“Gethostname error\n“);
exit(1);
}
/*客户程序开始建立sockfd描述符*/
if((sockfd=socket(AF_INETSOCK_STREAM0))==-1) //AF_INET:Internet;SOCK_STREAM:TCP
{
fprintf(stderr“Socket Error:%s\a\n“strerror(errno));
exit(1);
}
/*客户程序填充服务端的资料*/
bzero(&server_addrsizeof(server_addr)); //初始化置0
server_addr.sin_family=AF_INET; //IPV4
server_addr.sin_port=htons(portnumber); //(将本机上的short数据转化为网络上的short数据)端口号
server_addr.sin_addr=*((struct in_addr *)host->h_addr); //IP地址
/*客户程序发起连接请求*/
if(connect(sockfd(struct sockaddr *)(&server_addr)sizeof(struct sockaddr))==-1)
{
fprintf(stderr“Connect Error:%s\a\n“strerror(errno));
exit(1);
}
while(1)
{
system(“reset“);
printf(“ *====================================*\n“);
printf(“ | 多功能电子通讯录 |\n“);
printf(“ | |\n“);
printf(“ | |\n“);
printf(“ | 版本:1.0|\n“);
printf(“ --------------------------------------\n“);
printf(“ | 1:添加好友信息 2:查看好友信息 |\n“);
printf(“ | 3:搜索好友信息 4:删除好友信息 |\n“);
printf(“ | 5:修改好友信息 6:退出 |\n“);
printf(“ *====================================*\n“);
printf(“ 请输入你所要做的操作:\n“);
printf(“ insert/display/search/delete/alter/exit:\n“);
char cmd[20];
while(1)
{
printf(“ Please input cmd:“);
scanf(“%s“cmd);
if(strcmp(cmd“insert“) == 0) //插入操作
{
system(“reset“);
msg.action = 1;
printf(“Please input id:\n“);
scanf(“%d“&msg.id);
printf(“Please input name:\n“);
scanf(“%s“msg.name);
printf(“Please input age:\n“);
scanf(“%s“msg.age);
printf(“Please input tel:\n“);
scanf(“%s“msg.tel);
printf(“Please input addr:\n“);
scanf(“%s“msg.addr);
write(sockfd&msgsizeof(msg));
read(sockfd&msgsizeof(msg));
if(msg.action == 1)
{
printf(“insert success!\n“);
}
else
{
printf(“insert error!\n“);
}
printf(“\nBack to Menu (yes/no)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-03-26 09:38 网络通讯录\
文件 10993 2017-03-26 09:36 网络通讯录\client
文件 2048 2017-03-17 14:35 网络通讯录\message.db
文件 9450 2017-03-26 09:38 网络通讯录\server
文件 7438 2017-03-26 09:36 网络通讯录\tcp_client.c
文件 6093 2017-03-17 11:02 网络通讯录\tcp_client.c~
文件 6103 2017-03-18 14:30 网络通讯录\tcp_server.c
文件 4736 2017-03-16 15:17 网络通讯录\tcp_server.c~
- 上一篇:C++贪心算法实现活动安排问题(代码)
- 下一篇:英汉词典(C语言实现)
相关资源
- 基于c语言的通讯录系统
- C++通讯录管理系统源码(控制台)
- 简单通讯录C语言实现
- C语言通讯录管理系统彩色界面
- c++通讯录管理系统
- c++ MFC 通讯录 源代码
- C语言实现TCP/IP协议通信和UDP协议通信
- 通讯录MFC完整版
- 通讯录的制作数据结构c语言 代码+报
- C++ VC++编写通讯录文件保存附报告
- 通讯录MFC程序,C++大作业
- MFC通讯录源码(毕业设计 课程设计
- mfc编写的通讯录小程序
- C++学生通讯录源代码
- 一款基于MFC编写的通讯录程序
- mfc通讯录.zip
- MFC制作SQLITE3操作界面
- sqlite3x86 & x64开发库
- MFC 使用sqlite3
- 树形控件显示通讯录
- Visual C++ 6.0用MFC实现简易通讯录
- 基于VC++ MFC通讯录
- MFC个人通讯录管理系统
- 通讯录设计基于MFC的个人通讯录管理
- 基于MFC的个人通讯录管理系统
- MFC简单通讯录制作
- C++学生通讯录系统
- VS2010 MFC 个人信息管理系统
- C++大作业 MFC实现个人通讯录
- mfc课程设计 通讯录
评论
共有 条评论