- 博客(6)
- 资源 (2)
- 收藏
- 关注
原创 字节未对齐引起的段错误
最近写代码,在去掉代码编译警告时,发现在删除一行无用代码时,会引起段错误,实在是很莫名其妙!经过不断的加打印,发现在代码中有几个数组的大小设置为 5 个字节,考虑到字节对齐的问题,尝试将数组大小修改为 8个字节之后,问题解决了!看来,这样的细节问题,值得我们所有人注意了!在定义结构体,定义数组时,要多注意字节对齐的问题,不然,出现段错误都是莫名其妙的了!
2013-10-28 17:28:11 1396 1
转载 如何设置socket的Connect超时
1.首先将标志位设为Non-blocking模式,准备在非阻塞模式下调用connect函数2.调用connect,正常情况下,因为TCP三次握手需要一些时间;而非阻塞调用只要不能立即完成就会返回错误,所以这里会返回EINPROGRESS,表示在建立连接但还没有完成。3.在读套接口描述符集(fd_set rset)和写套接口描述符集(fd_set wset)中将当前套接口置位(用FD_
2013-10-17 15:20:28 2551
转载 客户端 用不用 bind 的区别
无连接的socket的客户端和服务端以及面向连接socket的服务端通过调用bind函数来配置本地信息。使用bind函数时,通过将my_addr.sin_port置为0,函数会自动为你选择一个未占用的端口来使用。 Bind()函数在成功被调用时返回0;出现错误时返回"-1"并将errno置为相应的错误号。需要注意的是,在调用bind函数时一般不要将端口号置为小于1024的值,因为1到1024
2013-10-17 10:36:34 595
转载 Ubuntu 更改mac地址
一,暂时修改 首先必须关闭网卡设备,否则会报告系统忙,无法更改。 sudo /sbin/ifconfig eth0 down 修改 MAC 地址,这一步较 Windows 中的修改要简单。 sudo /sbin/ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE (你的MAC地址) 重新启用网卡
2013-10-14 11:11:50 1515
转载 C语言的put函数汇总
1、int putc(int ch, FILE *stream); 输出一字符到指定流中int main(void){ char msg[] = "Hello world\n"; int i = 0; while (msg[i]) putc(msg[i++], stdout); return 0;}2、int putchar(int ch);
2013-10-11 08:59:56 7865
转载 C语言的get函数汇总
1、int getc(FILE *stream); 从指定输入流 stream 的当前位置读取一个字符,若读到文件尾而无数据时便返回EOF。main(){ int c; FILE *fp= fopen("d:\\a.txt","r"); fpos_t p=4; fsetpos(fp,&p); c=getc(fp); putchar(c);}文件内容
2013-10-11 08:58:31 1857
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人