2011年1月20日 星期四

關於"warning: deprecated conversion from string constant to ‘char*"這個warning

.

印象中,至從某個版本gcc(應為gcc4.3)更新後,就會出現這個warning
原本不會有warning的code,根新後,一堆這種warning

我記得原因是,當你宣告一個字串常數char *str = "xxx";
可是,你卻把他當成char *給別人,而非const char *,於是別人就可以改該常數
正確的解法是改code,該constant就傳constant

程式是該有任何warning的,沒錯!

但問題是不是我寫的code,又即將要淘汰,而又有很多很多warning,怎辦?
從某個地方找到solution,將該特定warning濾掉吧,先focus在別的warning吧

在make file或gcc指令加入該參數(來源出處):

-Wno-write-strings

這個solution我試過,有用,它會濾掉該特定warning

當然,最根本的解法是寫出沒有warning的code
如果是需要maintain的code,時間又充裕,還是花時間改吧

同一個網頁提供使用sed批次處理的解法,他沒試過,我也沒試過,但有5人投票他票,這個解法不能解全部,但能大幅減輕warning數量

find . -exec sed -E -i .backup -n \ -e 's/char\s*\*\s*(\w+)\s*= "/char const* \1 = "/g' {} \;


.

2011年1月7日 星期五

將windows 7的alt tab換回winxp的style

.

最近都在NB上寫code,實在沒辦法習慣win7 style的alt tabl
今天被惹毛了,決定試看看能否將windows 7的alt tab換回winxp的style
結論是可以

方法是按"win + break"這組熱鍵,呼叫出系統管理台
然後依序點"進階系統設定"->"進階"tab"->效能中的"設定"->"視覺效果"tab->將"啟用桌面轉譯緩衝處理"的勾勾取消,按下確定
alt tab就變回winxp的style囉



原本win 7的alt tab長這樣


現在長這樣


.

2011年1月5日 星期三

Breaking Night - Liz Murray

-

曾經好幾度想要放棄博士班的學業

Breaking Night講的是Liz Murray的故事,算自傳吧
Subtitle中,有一句是"My journey from homeless to harvard"

是的,曾經無家可歸的她(曾經還在街上流浪),不僅讀到哈佛,還拿到哈佛的博士
除了她,還有另一個類似的例子,也是進哈佛,還拍成電影:風雨哈佛路

請友人幫我從美國回來時帶回來(Amazon收我7NT的海外購物費,不厚道啊,我明明是寄到美國)
才看到第一頁就很悲慘

不僅是她媽的悲慘
我也很悲慘
生字一堆……
誰能告訴我:Mary-friggin-Poppin到底是什麼意思啊?(我猜是一首歌……)

第一頁在回憶她媽的悲慘青年時
主要是回憶她媽的話,第二頁從她媽的話中再間接描述她爸
我想,因為她媽和她爸如此悲慘,她的童年才會如此悲慘
她媽說的Pumking,應該是是在叫主角(一開始我以為是她爸的暱稱)

希望看了這本書能讓我有繼續的動力
人生的機會不多,有就要好好把握和珍惜
如果情況如此悲劇的她,都能唸到名校的博士
狀況好得多的我沒理由撐不下去

但我首先要先撐下去在寫論文的餘暇把書看完……Orz

-