筆記總結

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:

 

 

 

 

 

 

 

 

 

發佈了39 篇原創文章 · 獲贊 6 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章