1. 程式人生 > >第1章知識點總結

第1章知識點總結

第一章 C語言概述

  • IOCCC國際模糊C程式碼大賽 (International Obfuscated C Code Contest)
v,i,j,k,l,s,a[99];
main()
{
	for(scanf("%d",&s); *a-s; v=a[j*=v]-a[i],k=i<s,j+=(v=j<s&&
	(!k&&!!printf(2+"\n\n%c"-(!l<<!j)," #Q"[1^v?(1^j)&1:2])&&
	++l||a[i]<s&&
v&&v-i+j&&v+i-j))&&!(1%=s),v||(i==j?a[i+=k]=0: ++a[i])>=s*k&&++a[--i]) ; }
  • 額,這不是亂碼誒。。。
  • 這個程式是由Doron Osovlanski 和 Baruch Nissenbaum共同編寫的,其功能是打印出八皇后問題(此問題要求在一個棋盤上放置8個皇后,使得皇后之間不會出現相互“攻擊”的局面)的全部解決方案。
  • 事實上,此程式可用於求解皇后數量在4~99範圍內的全部問題,更多的獲獎程式可以到競賽網站www.ioccc.org獲取。

問與答 P5

  • lint是做什麼的?
  • lint這個名字是如何得來的?
  • 如何獲得lint?
  • 有沒有辦法在不使用lint的情況下強制編譯器進行更徹底的錯誤檢查?
    多級警告?
  • 我很關心能讓程式儘可能可靠的方法。除了lint和除錯工具以外,還有其他有效的工具嗎?
    越界檢查工具 bounds-checker?
    記憶體洩漏監測工具 leak-finder?