linux局域网通信c语言源代码的简单介绍
admin 发布:2022-12-19 19:32 153
本篇文章给大家谈谈linux局域网通信c语言源代码,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
如何在linux上编写c语言程序代码
linux终端下,编译C语言程序步骤为:
采用vi进行源代码编写,编写完成后,:wq存盘退出,如:
vi test.c
在命令行下,运行gcc编译程序,生成执行码,如:
gcc -o test test.c
-o 表示指明生成的执行码名称
运行编译后的执行码
./test
linux下进程通信 C语言编写
这个真有点难度,linux下几乎只有标准C语言,没有像VC那样被修改了标准的语言,所以可以认为linux下的C语言都是标准的。 这个程序要是所有的代码都自己写的话,会非常复杂的,并且操作系统也不允许你写这样的程序...
Linux系统中,C语言源程序的编辑编译运行
你定义的 "headfile.h"这个头文件因为你电脑上没有,所以你必须要自己创建一个文件存放代码。存放的位置就放到你XX.c文件的目录下就OK 。
现在你执行gcc -Wall XX.c 就会生成一个a.out文件。
只有执行./a.out 就可以执行程序了
当然你可以使用GDB调试程序。
在linux下如何用c语言来写一个socket编程的聊天小程序
源码如下:
//chat_one.c
#include sys/types.h
#include sys/socket.h
#include netinet/in.h
#include stdio.h
#include string.h
#include errno.h
#include malloc.h
#include sys/select.h
int main( int argc, char **argv)
{
struct sockaddr_in chatone, chattwo;
char pmsg[1000];
char *buf;
int chatone_fd;
int ret,i;
int len, msg_len;
fd_set fdset;
if ( argc 2 ){
printf("please input ip address\n");
return -1;
}
printf("server address is %s\n", argv[1]);
chattwo.sin_family = AF_INET;
chattwo.sin_port = htons(60002);
inet_pton(AF_INET, argv[1], chattwo.sin_addr.s_addr);
chatone.sin_family = AF_INET;
chatone.sin_port = htons(60000);
chatone.sin_addr.s_addr = INADDR_ANY;
chatone_fd = socket(PF_INET, SOCK_DGRAM, 0);
if ( -1 == chatone_fd ){
printf("create socket failed %s\n", strerror(errno));
return -1;
}
ret = bind(chatone_fd, (struct sockaddr *)chatone, sizeof(chatone));
if ( -1 == ret){
printf("bind failed %s \n", strerror(errno));
return -1;
}
for(i=0; i1000;i++){
FD_ZERO( fdset );
FD_SET ( 0, fdset);
FD_SET( chatone_fd, fdset);
if ( -1 == select ( chatone_fd+1, fdset, NULL, NULL, NULL) ){
continue;
}
if ( FD_ISSET( chatone_fd, fdset)){
recvfrom( chatone_fd, pmsg, 999, 0, NULL, 0);
printf("receive %s\n", pmsg);
}
else{
memset( pmsg, 0, 1000);
fgets(pmsg, 999, stdin);
len = sizeof(chattwo);
sendto( chatone_fd, pmsg, 1000, 0,\
(struct sockaddr*) chattwo, len);
printf("send %s\n", pmsg);
}
}
printf("sent %d packets\n", i);
close(chatone_fd);
return 0;
}
//chat_two.c
#include sys/types.h
#include sys/socket.h
#include netinet/in.h
#include stdio.h
#include string.h
#include errno.h
#include malloc.h
#include sys/select.h
int main( int argc, char **argv)
{
struct sockaddr_in chatone, chattwo;
char pmsg[1000];
char *buf;
int chattwo_fd;
int ret,i;
int len, msg_len;
fd_set fdset;
if ( argc 2 ){
printf("please input ip address\n");
return -1;
}
printf("server address is %s\n", argv[1]);
chattwo.sin_family = AF_INET;
chattwo.sin_port = htons(60002);
chattwo.sin_addr.s_addr = INADDR_ANY;
chatone.sin_family = AF_INET;
chatone.sin_port = htons(60000);
inet_pton(AF_INET, argv[1], chatone.sin_addr.s_addr);
chattwo_fd = socket(PF_INET, SOCK_DGRAM, 0);
if ( -1 == chattwo_fd ){
printf("create socket failed %s\n", strerror(errno));
return -1;
}
ret = bind(chattwo_fd, (struct sockaddr *)chattwo, sizeof(chattwo));
if ( -1 == ret){
printf("bind failed %s \n", strerror(errno));
return -1;
}
for(i=0; i1000;i++){
FD_ZERO( fdset );
FD_SET ( 0, fdset);
FD_SET( chattwo_fd, fdset);
if ( -1 == select ( chattwo_fd+1, fdset, NULL, NULL, NULL) ){
continue;
}
if ( FD_ISSET( chattwo_fd, fdset)){
recvfrom( chattwo_fd, pmsg, 999, 0, NULL, 0);
printf("receive: %s\n", pmsg);
}
else{
memset( pmsg, 0, 1000);
fgets(pmsg, 999, stdin);
len = sizeof(chatone);
sendto( chattwo_fd, pmsg, 1000, 0,\
(struct sockaddr*) chatone, len);
printf("send %s\n", pmsg);
}
}
printf("sent %d packets\n", i);
close(chattwo_fd);
return 0;
}
编译好这个两个程序就可以进行简单的通信了。
关于linux局域网通信c语言源代码和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;
相关推荐
- 05-28java游戏源代码(游戏开发源代码)(2024-05-28)
- 05-28门禁系统软件源代码(门禁机编程)(2024-05-28)
- 05-28vlc源代码下载(vlcformobile下载)(2024-05-28)
- 05-28源代码最后建筑(源代码 最后)(2024-05-28)
- 05-28用php在线题目系统源代码(php报名系统源码)(2024-05-28)
- 05-28源代码解析(信息科技利用什么解析器对源代码解析)(2024-05-28)
- 05-28信息发布系统源代码(发布网站源码)(2024-05-28)
- 05-28unixv6源代码(unix源代码分析)(2024-05-28)
- 05-28手机在线音乐源代码(音乐下载源码)(2024-05-28)
- 05-28个人主页源代码(个人主页源代码 百度网盘)(2024-05-28)
取消回复欢迎 你 发表评论:
- 标签列表
- 最近发表
-
- 神马搜索创始人是谁啊[神马搜索创始人是谁啊图片]
- 党建小程序代码(党建小程序开发)(2024-05-28)
- java猜杯子游戏代码(猜数游戏java程序)(2024-05-28)
- 个人主页源代码(个人主页源代码 百度网盘)(2024-05-28)
- 论坛视频代码怎么用(论坛程序源码)(2024-05-28)
- asp.net人事管理系统源代码的简单介绍(2024-05-28)
- 积分商城源代码(积分商城 开源)(2024-05-28)
- php签到送积分代码(php实现签到)(2024-05-28)
- php开发代码下载(php开发代码网)(2024-05-28)
- 微信端qq在线咨询代码(微信代码网站)(2024-05-28)
- 友情链接