热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

在手机上怎么运行c语言,各位前辈这两个程序怎么在手机上运行

该楼层疑似违规已被系统折叠隐藏此楼查看此楼*madebyebhrz*#include#include#include#include#include#include#include

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

/*made by ebhrz*/

#include

#include

#include

#include

#include

#include

#include

/*---------global define---------*/

int cfd; /* 文件描述符 */

int recbytes;

int sin_size;

char buffer[1024] = { 0 }; /* 接受缓冲区 */

struct sockaddr_in s_add, c_add; /* ip、端口 */

unsigned short portnum = 1234;//端口可自己修改

char msg[1024];

/*-----------global define end-----*/

int set_link()

{

cfd = socket(AF_INET, SOCK_STREAM, 0);

if (-1 == cfd)

{

printf("socket fail ! \r\n");

return -1;

}

printf("socket ok !\r\n");

bzero(&s_add, sizeof(struct sockaddr_in));

s_add.sin_family = AF_INET;

s_add.sin_addr.s_addr = inet_addr("127.0.0.1"); /* ip转换为4字节整形,使用时自己修改 */

s_add.sin_port = htons(portnum);

if (-1 ==

connect(cfd, (struct sockaddr *)(&s_add), sizeof(struct sockaddr)))

{

printf("connect fail !\n");

return -1;

}

return 1;

}

int rec()

{

if (-1 == (recbytes = read(cfd, buffer, 1024)))

{

printf("read data fail !\n");

return -1;

}

printf("%s\n", buffer);

if(strcmp(buffer,"bye bye")==1)

exit(0);

memset(buffer,0,1024);

}

int snd()

{

scanf("%[^\n]", msg);

if (-1 == write(cfd, msg, 32))

{

printf("write fail!\n");

return -1;

}

memset(msg, 0, 1024);

getchar();//接收遗留\n

}

int main()

{

printf("Hello,welcome to client !\n");

pid_t pid;

if (set_link() != 1)

{

printf("sth wrong");

return -1;

}

pid = fork();

if (pid <0)

perror("fork error");

else if (pid > 0)

{

while (1)

rec();

close(cfd);

}

else

{

while (1)

snd();

close(cfd);

}

return 0;

}

/*made by ebhrz*/

#include

#include

#include

#include

#include

#include

#include

/*---------global define---------*/

int sfp, nfp;// 文件描述符

int recbytes;

int sin_size;

char buffer[1024] &#61; { 0 };//接受缓冲区

struct sockaddr_in s_add, c_add; //ip、端口

unsigned short s_portnum &#61; 1234;

char msg[1024];

/*-----------global define end-----*/

int set_link()

{

sfp &#61; socket(AF_INET, SOCK_STREAM, 0);

if (-1 &#61;&#61; sfp)

{

printf("socket fail ! \n");

return -1;

}

printf("socket ok !\n");

bzero(&c_add, sizeof(struct sockaddr_in));

s_add.sin_family &#61; AF_INET;

s_add.sin_addr.s_addr &#61; htonl(INADDR_ANY);//ip不定

s_add.sin_port &#61; htons(s_portnum);

if (-1 &#61;&#61; bind(sfp, (struct sockaddr *)(&s_add), sizeof(struct sockaddr)))

{

printf("bind fail !\r\n");

return -1;

}

printf("bind ok !\r\n");

sin_size &#61; sizeof(struct sockaddr_in);

return 1;

}

int rec()

{

if (-1 &#61;&#61; (recbytes &#61; read(nfp, buffer, 1024)))

{

printf("read data fail !\n");

return -1;

}

printf("%s\n", buffer);

if(strcmp(buffer,"bye bye")&#61;&#61;1)

exit(0);

memset(buffer,0,1024);

}

int snd()

{

scanf("%[^\n]", msg);

printf("%s", msg);

if (-1 &#61;&#61; write(nfp, msg, 32))

{

printf("write fail!\n");

return -1;

}

memset(msg, 0, 1024);

getchar();

}

int main()

{

printf("Hello,welcome to service !\n");

pid_t pid;

if (set_link() !&#61; 1)

{

printf("sth wrong");

return -1;

}

if (-1 &#61;&#61; listen(sfp, 5))

{

printf("listen fail !\n");

return -1;

}

nfp &#61; accept(sfp, (struct sockaddr *)(&c_add), &sin_size);

if (-1 &#61;&#61; nfp)

{

printf("accept fail !\n");

return -1;

}

pid &#61; fork();

if (pid <0)

perror("fork error");

else if (pid > 0)

{

while (1)

snd();

close(nfp);

close(sfp);

}

else

{

while (1)

rec();

close(nfp);

close(sfp);

}

return 0;

}



推荐阅读
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文介绍如何使用阿里云的fastjson库解析包含时间戳、IP地址和参数等信息的JSON格式文本,并进行数据处理和保存。 ... [详细]
  • 本教程涵盖OpenGL基础操作及直线光栅化技术,包括点的绘制、简单图形绘制、直线绘制以及DDA和中点画线算法。通过逐步实践,帮助读者掌握OpenGL的基本使用方法。 ... [详细]
  • 本文详细介绍了Java中org.neo4j.helpers.collection.Iterators.single()方法的功能、使用场景及代码示例,帮助开发者更好地理解和应用该方法。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文详细介绍了 GWT 中 PopupPanel 类的 onKeyDownPreview 方法,提供了多个代码示例及应用场景,帮助开发者更好地理解和使用该方法。 ... [详细]
  • Explore how Matterverse is redefining the metaverse experience, creating immersive and meaningful virtual environments that foster genuine connections and economic opportunities. ... [详细]
  • Explore a common issue encountered when implementing an OAuth 1.0a API, specifically the inability to encode null objects and how to resolve it. ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
  • 本文深入探讨了如何通过调整InnoDB的关键配置参数来优化MySQL的随机IO性能,涵盖了缓存、日志文件、预读机制等多个方面,帮助读者全面提升数据库系统的性能。 ... [详细]
  • 本文详细探讨了VxWorks操作系统中双向链表和环形缓冲区的实现原理及使用方法,通过具体示例代码加深理解。 ... [详细]
  • 深入探讨CPU虚拟化与KVM内存管理
    本文详细介绍了现代服务器架构中的CPU虚拟化技术,包括SMP、NUMA和MPP三种多处理器结构,并深入探讨了KVM的内存虚拟化机制。通过对比不同架构的特点和应用场景,帮助读者理解如何选择最适合的架构以优化性能。 ... [详细]
author-avatar
mobiledu2502917563
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有