笔记总结

    技术2025-03-27  10

    1: 无符号长整型打印用%ul 有符号用%ld

     

     

    2: 解决socket不能重复绑定的问题

    当客户端保持着与服务器端的连接,这时服务器端断开,再开启服务器时会出现: Address already in usr。

    可以用netstat -anp | more 可以看到客户端还保持着与服务器的连接(还在使用服务器bind的端口)。这是由于client没有执行close,连接还会等待client的FIN包一段时间。

    解决方法是使用setsockopt,使得socket可以被重用,是最常用的服务器编程要点。

    具体的做法为是,在socket调用和bind 调用之间加上一段对socket的设置:

    int opt = 1;setsockopt(socket_fd,SOL_SOCKET,SO_REUSEADDR,&opt,sizeof(opt));

    3:  printf("%*.*s/n",m,n,ch);

      其中前边*定义的是总的宽度,后边*是指定输出字符个数。分别对应外边参数m和n。

      输入: 10 3

      输出: Hap

     

     

    4 : 修改DNS:/etc/resolv.conf 里面添加nameserver 202.168.24.68如果还不行,就是服务器的端口没开iptables -IA RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT

     

     

     

    5:判断奇数

    if(i&1)

     

     

    6: unix 的几个好习惯

    cd tmp/a/b/c || mkdir -p tmp/a/b/c && tar xvf -C tmp/a/b/c ~/archive.tar

    tar xvf -C tmp/a/b/c newarc.tar.gz

    mkdir -p tmp/a/b/c

     

     

    将反斜杠用于长输入                ~ $ cd tmp/a/b/c || /> mkdir -p tmp/a/b/c && /> tar xvf -C tmp/a/b/c ~/archive.tar

     

     

     

    7:

     

     

     

     

     

     

     

     

     

    最新回复(0)