用C代码创建函数的快捷方法

时间:2013-03-27 09:12:48

标签: c function

我正在开发一个项目,我有一个C程序,代码超过3000行,需要很多时间才能完成。我需要将其划分为函数以获得更快的结果。

是否有一种快速的方法或某种方式我可以用来帮助我用长C代码创建函数? 或者我是否必须手动完成所有功能的代码?

例如这段代码和很多很多类似的东西。

addr_len = sizeof their_addr;
if ((numbytes = recvfrom(sockfd, ubuf, 6 , 0,(struct sockaddr *)&their_addr, &addr_len)) == -1) 
{
    perror("recvfrom");
    //exit(1);
}

inet_ntop(their_addr.ss_family,get_in_addr((struct sockaddr *)&their_addr),s, sizeof s);

//printf("listener: packet is %d bytes long\n", numbytes);

ubuf[numbytes] = '\0';
printf("listener: packet contains \"%s\"\n", ubuf);

2 个答案:

答案 0 :(得分:2)

就我的知识而言,没有自动化的方法来实现这一目标。您需要手动执行此操作。

答案 1 :(得分:2)

3000行不是很多代码......但是单个函数的代码很多。虽然这可能不会对性能产生影响,但您应该将代码拆分为可读性/维护并避免重复代码。

如果您认为您的代码花了太长的时间来查看花时间,但请注意,例如,在您发布的示例中,您使用了recvfrom,这可能是一个阻塞函数(没有错,但是如果你需要等待您的程序显然需要的传入数据,只要该数据到达需要它。