
劇情簡介:真實刑案小說家艾利森(伊森霍克 飾演)正因沉重的貸款壓力而備受煎熬,他亦同時陷入了創作瓶頸,為了激發靈感,艾利森舉家遷入一間不久前才發生滅門血案的凶宅,冀望能再寫出一本暢銷作品,解決家中財務危機。某日,艾利森竟於屋內找到了多部記錄著連環滅門血案的8厘米影片,一連串不尋常的現象自此開始接連發生,即將拼湊出血案
ryan0988 發表在 痞客邦 留言(0) 人氣(58)
劇情簡介:新世代暢銷小說【體溫】改編。R(尼可拉斯霍特 飾演)是個殭屍。他沒有記憶、身分、心跳,卻懷抱著許多夢想。他和其他活死人同伴有那麼一點不同,雖然只能勉為其難吐出幾個字和外界溝通,但內心世界卻深邃無比,充滿驚奇與渴望。在一座城市的廢墟裡,R遇見了一位女孩。這個名叫茱莉(泰瑞莎帕瑪 飾演)的女孩和他所知道的一切正好相反,她溫暖、燦爛、充滿活力,她是蒼灰陰鬱中一抹奔放豔麗的色彩。R不但沒吃她,還決定救她一命,於是一段緊張而又異常溫柔的甜蜜關係就此展開。 這種事從沒發生過,不但不合邏輯,也違背了規矩,不但改變了R,也改變他的活死人同伴,甚至讓死氣沈沈的世界出現了生機。然而,在那陰森腐敗的世界裡,想要完成夢想,他們還需要一場革命……
ryan0988 發表在 痞客邦 留言(0) 人氣(72)

劇情簡介:被自己人背叛放逐到死寂的星球上,雷狄克(馮迪索 飾演)被迫與異形展開了生存之戰,而變得更加有力量及危險。宇宙各路人馬賞金獵人紛紛出動想捉拿雷狄克 論功行賞,卻發現他們全都成了雷迪克復仇計畫的棋子,隨著雷狄克與敵人們短兵相接,雷狄克釋放出了最猛烈的復仇能量,在回到他的家鄉費亞星免於遭摧毀之前。
ryan0988 發表在 痞客邦 留言(0) 人氣(317)
[此篇文章並非原創若有冒犯敬請來信告知]
return與exit()的差別
同事問我:在main()裡面return,跟在main()裡面呼叫system call exit()有什麼不同? 我的觀念不算太清楚,所以整理一下網路上讀到的說法。
在main()裡面return,跟在main()裡面呼叫system call exit()是唯一兩者效果相同的地方,兩者的效果均為結束process。
若在main以外的函式裡呼叫return,local variables即從stack裡消失,返回呼叫此函式的地方。若呼叫exit,則該process就此結束、不會返回。
此外,可以使用atexit()或on_exit()註冊一個函式,結束process前,會呼叫該函式。
參考資料:
difference between exit and return
return statement vs exit() in main()
ryan0988 發表在 痞客邦 留言(0) 人氣(1,438)
平行處理是一個非常重要的程式設計方法,你幾乎不會不遇到它,在未來越來越多複雜的程式應用中,平行處理一定跑不掉。
「平行處理,我會啊,Java裡面不就不包含有 thread,用它就沒錯了」
沒錯,Java 一開始出來時,在語言層級直接支援 thread,以那時的時空背景,確實是令人眼睛一亮的特色。
「Java有 thread、有 synchronized (lock),還有一大堆豐富的資料結構供我們使用,還不夠嗎?」
ryan0988 發表在 痞客邦 留言(0) 人氣(1,091)
[此篇文章並非原創若有冒犯敬請來信告知]
kogeiman
我們都知道,行程就是正在執行的程序。而在Linux中,可以使用一個行程來建立另外一個行程。這樣的話,Linux的行程的組織結構其實有點像Linux目錄樹,是有層次結構的,可以使用pstree命令來查閱。在最上面是init程序的執行行程。它是所有行程的祖先。Linux提供了兩個函數來建立行程。
ryan0988 發表在 痞客邦 留言(0) 人氣(9,996)
[轉載自藍森林]
問個問題大家別罵我笨 說實話我接觸c語言有段時間了 不過見識特別短,有一個很簡單問題 我們單位的技術在用字符串之前總是 memset(buffer , 0 , sizeof(buffer));這樣 當然了就是清空, 那麼我想既然能都清0,為什麼他不用 bzero(buffer , sizeof(buffer)); memset效率會比bzero高麼????? bzero不是專門清空的麼? 哪個兄弟幫解釋一下 小弟先謝謝啦 |
ryan0988 發表在 痞客邦 留言(0) 人氣(6,985)
[此篇文章並非原創若有冒犯敬請來信告知]
360度全景攝影機掀話題
ryan0988 發表在 痞客邦 留言(0) 人氣(3,219)
[此篇文章並非原創若有冒犯敬請來信告知]
讀懂函式庫的 man page
初學 Linux 時, 覺得 man page 真不是寫給一般人看的, 到像是寫給已經懂的人備忘用的。即使現在已比較習慣讀 man page 了, 還是這麼覺得。
以前只知道 man function 看要引入什麼 header, 了解函式的參數、傳回值。最近才明白裡面的其它資訊。
背景知識可以
搜尋 "how to read man page" 或看
Wikipedia 介紹得知。這裡只針對使用函式庫講基礎知識。另外
這裡有顯示彩色 man page 的設定。
以
man 3 sqrt 為例:
SQRT(3) Linux Programmer's Manual SQRT(3)
NAME
sqrt, sqrtf, sqrtl - square root function
SYNOPSIS
#include <math.h>
double sqrt(double x);
float sqrtf(float x);
long double sqrtl(long double x);
Link with -lm.
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
sqrtf(), sqrtl():
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
or cc -std=c99
#include 表示需要的 header
下面有函式的 signature
Link with -lm 表示使用 gcc 編譯時要加 -lm, ld 才會找到 libm.so。詳細的運作過程見《ld, ld.so 和 ldconfig 的行為》
Feature Test Macro 是 UNIX 跨平台用的一套規範, 見 man feature_test_macros 了解 feature test macro 的作用, 以及 glibc 認得的類型。feature test macro 要定義在檔案的一開頭才行, 或用 gcc -D 定義。
關於 feature test macro, 這裡指出要定義
_BSD_SOURCE、...、
_XOPEN_SOURCE 等, 才能使用 sqrtf() 和 sqrtl() (
math.h 才會引入它們的宣告}}}。反之, sqrt() 有跨所有平台, 可直接使用。
這裡和
這裡有相關說明, 解釋
-std=c99、
-std=gnu99 的效果, 會定義不同的 feature test macro。若沒有考慮可攜性的話, 用 c99 編不過時改用 gnu99 可編過, 不用擔心會有什麼副作用。
所以, 要使用特定函式時, 要先看 man FUNCTION 了解需要定義的 feature test macro, 讓 compiler 可以編過。再來從 man FUNCTION 得知 static linking 需要的參數。
要檢查目前程式定義了那些 feature test macro, 可以用:
gcc -E -dD MYPROG.c
除查看 feature test macro 外, 用來查引入的常數也很方便, 比方說忘了 stdin 的 file number 的常數, 引入 unistd.h 後, 用 gcc 展開看一看, 就會找到
#define STDIN_FILENO 0
ryan0988 發表在 痞客邦 留言(0) 人氣(117)

劇情簡介:蒐屍魔舉辦狂歡派對,邀請全城帥哥辣妹來共襄盛舉,艾莉娜與
朋友們更是盛裝出席,而這些誤入陷阱的年青人,都成為他的完美收藏品。曾經從蒐屍魔魔掌中逃過一劫的阿金(喬許史都華 飾演),因為嚴重精神創傷,在醫院接受長期的心理治療,卻突然遭人挾持綁架。教唆綁架阿金的人,正是艾莉娜的父親。他提出
巨額的報酬,強迫阿金組成搜救隊,前往殺人魔家中進行探查,希望可以救回自己的女兒...
ryan0988 發表在 痞客邦 留言(0) 人氣(112)