会宁失踪女孩最新消息
地區(qū):英屬維京群島
  類型:古裝
  時(shí)間:2025-06-10 07:07:50
劇情簡介
IT之家 1 月 11 日消息,據(jù) TheElec 報(bào)道,韓國芯片制造商三星傅山 SK 海力士正計(jì)劃采購用于芯生產(chǎn)的硅晶圓,但數(shù)量于最初計(jì)劃。消息人士,芯片制造商在第四季的某個(gè)時(shí)候與各自的晶供應(yīng)商討論了這個(gè)問題硅晶圓是從結(jié)晶硅中切出來的。電子產(chǎn)品中使的芯片就是從這些晶圓切割下來的。這些晶圓五家主要供應(yīng)商,包括本的 Shin-Etsu 和 Sumco,臺灣地區(qū)的 GlobalWafers,德國的 Siltronic 和韓國的 SK Siltron。在疫情最嚴(yán)重的兩年里,這些晶圓供應(yīng)張,芯片制造商供不應(yīng)。這種情況在 2022 年全球經(jīng)濟(jì)開始衰退時(shí)仍在繼續(xù)。這是因?yàn)楣?是后端產(chǎn)業(yè),消費(fèi)市場影響來得比前端產(chǎn)業(yè)來晚,前端產(chǎn)業(yè)直接向客銷售產(chǎn)品,受影響更直。IT之家了解到,去年第三季度,當(dāng)芯片制造首次報(bào)告利潤下降時(shí),圓公司的利潤卻出現(xiàn)了長。芯片制造商正在尋比平時(shí)更多地減少采購晶圓數(shù)量。消息人士稱晶圓供應(yīng)交易通常是長的,這通常會限制芯片造商調(diào)整購買數(shù)量,但星和 SK 海力士已要求進(jìn)一步減少供應(yīng)量?
220840次播放
16187人已點(diǎn)贊
3146人已收藏
明星主演
Lincoln
立歐·普
駒木根葵汰
最新評論(307+)

徐溫柔

發(fā)表于7分鐘前

回復(fù) 徐捷 : ※全文無透《飛越 13 號房》是一款 ALT Lab 開發(fā)和發(fā)行互動(dòng)式電游戲,于 1 月 9 日在 Steam 平臺正式售。在本中,玩家扮演一位愛游戲的叛逆少年,被母親行送到了家名為“際感恩教中心”的癮治療機(jī)。在這里壓迫和束被冠以“正”之名置身如此惡的環(huán)境,玩家需一次次地出抉擇,定劇情發(fā)的方向;過不斷調(diào)場景中的密,了解事背后的相;與一個(gè)同樣身囹圄的伙打交道,與他們的動(dòng)將決定們的命運(yùn)最終,你找到屬于自己的回之路。本以真人實(shí)影像為主影像質(zhì)量眾,攝影置景、表等均有不表現(xiàn),為家提供了秀的視聽驗(yàn),如同追一部好;互動(dòng)玩豐富,要齊全,劇選擇、QTE、擬真交互、線索集、推理成等應(yīng)有有;劇情然偶有出,但源自實(shí)問題的材,嚴(yán)肅故事基調(diào)已足夠發(fā)深省。精的影像,人難忘的楊校長”《飛越 13 號房》中,玩家部分時(shí)間對的是制組實(shí)拍的人影像。為一個(gè)常被國產(chǎn)劇磨的觀眾我可以負(fù)任地告訴位玩家:里沒有磨十級的美濾鏡,沒意義不明鏡頭,沒血壓升高降智橋段影像的影始終與故的發(fā)展保高度一致,跟隨角的處境和緒起伏。頭下的“教授”和感恩中心充滿壓迫,令人不而栗。蒸日上總的說,盡管限于拍攝件和成本本作的攝雖然遠(yuǎn)稱上盡善盡,但是足勝任敘事調(diào)動(dòng)情緒功能。對家來說,段冒險(xiǎn)的聽體驗(yàn),足以稱得享受。另,本作中“國際感教育中心取景自一越南的學(xué)。制作組常巧妙地地制宜,這份來自國他鄉(xiāng)的生,包裝了一種令恐懼的未感,深化故事中的所網(wǎng)癮矯中心在玩心中的印。將“空”加入了事之中,富了本作事的層次最重要的,給到玩一種身臨境的感受最后值得提的是,作中的“際感恩教中心”的長、楊永教授的扮者貢獻(xiàn)了與倫比的演。在外上,他與實(shí)中的原簡直如出轍;他的手投足,笑一怒都人窒息。他出現(xiàn)在面中時(shí),幾乎難以視線從他上移開。故事里的角接受電治療時(shí),的那張大會充滿整屏幕,各玩家一定好心理準(zhǔn)。應(yīng)有盡的玩法作一款互動(dòng)電影游戲《飛越 13 號房》的互動(dòng)玩可以說是個(gè)類別下種玩法要的大集合除開最基的劇情選外,QTE、擬真交、線索收、推理合等應(yīng)有盡,它們會劇情推進(jìn)某個(gè)節(jié)點(diǎn)適時(shí)出現(xiàn)比如,在戲的某段程中,主被鎖在一辦公室里游戲會給玩家來一點(diǎn)擊式冒游戲的解,通過調(diào)場景找出脫的辦法逃出后又接一段激的追逐戲,玩家需根據(jù)畫面的提示快響應(yīng)一串 QTE 事件。點(diǎn)擊查在之后一段流程,玩家還要坐在監(jiān)器前反復(fù)看監(jiān)控錄,找出關(guān)信息。有,游戲還讓玩家進(jìn)推理,將中已有的索進(jìn)行合以獲得新劇情線索有感覺了為本作重戲的電療玩家要在限的時(shí)間,在一堆出的語句精確點(diǎn)擊些楊校長聽的話語盡管這一式并不新,卻很好還原了主被電擊時(shí)打成招的路歷程,入感十足豐富的玩帶來了豐的體驗(yàn),本作的整流程充滿互動(dòng)感,家不僅僅在觀看這故事,更高度參與了敘事當(dāng)。就難度言,這些法也都相簡單。沒高強(qiáng)度的作需求,密和推理部分也都當(dāng)輕度,戲也給予充足的提以避免卡。換言之本作是一能讓所有輕松上手并且玩到后的游戲豐富的選和分支而為互動(dòng)式影游戲核的選擇和支,《飛 13 號房》同樣到了一份人滿意的卷。從數(shù)上來說,作的選擇分支相當(dāng)富。每一節(jié)都有十二十個(gè)選點(diǎn),而每選擇點(diǎn)都延展出兩三個(gè)分支其中一些擇帶來的響會在本節(jié)顯現(xiàn)出,一些則在之后凸。各個(gè)選和分支之也并非相獨(dú)立,而會共同產(chǎn)影響,有候玩家需在接連而的一連串擇中做出確的判斷有時(shí)候又要在一章開端、中和結(jié)尾,至分散在個(gè)章節(jié)的鍵節(jié)點(diǎn)做正確判斷而產(chǎn)生的支又會影你接下來選擇。比,如果你擇將某樣鍵證據(jù)提交還給同,那在接來的舉證節(jié),你就法選擇使該證據(jù)。家的選擇止決定劇的走向,會影響到圍人對你看法。根他們對你態(tài)度,又額外解鎖些劇情線比如,如某位同伴你的態(tài)度冷淡,在一段劇情,他會把角毆打一,并沒收你手中的項(xiàng)關(guān)鍵線。如果某同伴對你好感度很,你就有會了解到多他 / 她的個(gè)人情。這套統(tǒng)高度考玩家對故理解的細(xì)程度,考玩家對每人物性格背景的觀能力。玩能切身感到自己的一個(gè)決定帶來的影。當(dāng)故事人物的命往向好的向發(fā)展時(shí)玩家會為己的抉擇到十足的悅和成就。它的潛在本作的四章和第章得到了分的展現(xiàn)在這兩章,主角受于楊校長需要為他查學(xué)校中異樣事件玩家將在多角色之斡旋,如你希望故朝好的方發(fā)展,你需要在楊長面前明保身的同,維持與他同伴之的關(guān)系,盡可能地掘出更多真相。你要謹(jǐn)慎考每一次抉,考慮楊長和其他伴對你的度變化。疑事件的圍,雙面諜的緊張激,在這系統(tǒng)下得了充分的現(xiàn),讓人罷不能。外,以我人的體驗(yàn)講,每一我初見的成度都在分之四十六十,游也提供了定的可重游玩性。人深省的事如果在劇透的前下評價(jià)《越 13 號房》的事,我的答是:嚴(yán)但不缺乏樂性。《越 13 號房》的事改編自實(shí)的相關(guān)件,而制組對還原實(shí)的態(tài)度目共睹。們將跟隨角的步伐從入校開,見證所“國際感教育中心的方方面。在寫實(shí)影調(diào)下,式荒誕的和事觸目心,失望背叛、貪、麻木,這一方天中反復(fù)上,直到我的痛心化無奈,直嘆息也化一陣若有無的回響盡管游戲偶有輕松諧的時(shí)刻但本作絕一款輕松諧的作品延續(xù)自現(xiàn)的嚴(yán)肅始充斥在游之中,是作的底色本作的基。好在,作組選擇懸疑片的型創(chuàng)作作本作故事調(diào)劑。故中大量的疑和解密素,各種戲相關(guān)的蛋,“越”式的冒,都一定度沖淡了肅現(xiàn)實(shí)的色,為其添了更多為游戲的樂性。這的作法可會讓部分家感到不,但另一面它也確讓這個(gè)觸驚心的故不至于難卒讀。越經(jīng)典橋段同時(shí),制組并沒有著消費(fèi)這題材的態(tài),他們對一命題的釋不只停于表面。作沒有將題的矛頭指某一個(gè)物,復(fù)雜問題沒有個(gè)簡單的案,制作也沒有試給出一個(gè)案,相反他們將自的回答融了游戲難言說的氛之中。這不是一個(gè)滿說教意的故事,戲?yàn)橥婕?出了思考空間,而些思考,許是欣賞個(gè)故事最的收獲。婪的人們然,本作故事也有不足之處比如唐突感情線,顯臉譜化配角等等但是瑕不瑜,整體,制作組功傳達(dá)了們期望通這個(gè)故事要傳達(dá)的容??偨Y(jié)飛越 13 號房》作為一款互式電影游,提供了致的影像多樣的玩,豐富的擇和分支以及一個(gè)人深省的事。在有的條件下ALT Lab 做到了該類型水準(zhǔn)之上針對這樣個(gè)牽動(dòng)所玩家的題,他們交了一份令滿意的答。本作的題《飛越 13 號房》致敬了典電影《越瘋?cè)嗽?。在這場宕起伏、坷多舛的險(xiǎn)落下帷之時(shí),我信每位玩都會在心由衷發(fā)問誰才是真的瘋?cè)恕?文來自微公眾號:UCGmedia (ID:UCG_Media),作者:點(diǎn)點(diǎn)?


趙海濤

發(fā)表于8小時(shí)前

回復(fù) 洛烏·阿德勒 : 本文來自微信公眾號:低并發(fā)程 (ID:dibingfa),作者:閃客原文標(biāo)題:《管這破玩意叫指針?》本系列三篇,用破玩意的方式徹底理好指針的本質(zhì):你管這破玩意指針 -- 基礎(chǔ)篇你管這破玩意叫指針 -- 進(jìn)階篇你管這破玩意叫指針 -- 變態(tài)篇話不多說,開始!內(nèi)存六韜通常被謹(jǐn)?shù)禺嫵上旅孢@個(gè)樣子,一個(gè)方是低地址上方是高地址的格樓。但我今天換種畫法,畫成面這個(gè)樣子。每個(gè)格子代表內(nèi)中的 1 個(gè)字節(jié)(8 位),格子上的數(shù)字就代表內(nèi)存地址我也直接用 10 進(jìn)制來表示了,免得 16 進(jìn)制又算不明白了。目前內(nèi)存狙如完全空的,子里沒有任何內(nèi)容。試想一下如果你忘掉所有的語法規(guī)則和程規(guī)范,你會如何描述對這些存格子的操作呢?一、類型系很簡單,往格子 3 處放個(gè)數(shù)字 29,往格子 6 處放個(gè)數(shù)字 38,就這么簡單直接地描述即可。但是這樣說話太麻了,什么往格子 3 處放個(gè)數(shù)字 29 的,廢話太多,也不方便不講感藟山的計(jì)算機(jī)去理解那我們就定個(gè)指令,使用 mov $x, (y) 表示把數(shù)字 x 放入格子 y,如下:mov?,?(3)mov?,?(6)這就表示剛剛說的:把數(shù)字?29?放入內(nèi)存格子?3把數(shù)字?38?放入內(nèi)存格子?6是不是太簡單了?別急,好戲馬窫窳開始!如果把數(shù)字 999 放入內(nèi)存格子 8,該怎么辦呢?由于 1 個(gè)格子表示 1 個(gè)字節(jié),只有 8 位,因此只能表示 256 個(gè)數(shù)字,要么是有符號的 -128 ~ 127,要么是無符號的 0 ~255,顯然數(shù)字 999 無法放在 1 個(gè)格子內(nèi),只能占用 2 個(gè)格子了。那也好辦,就這么說,數(shù)字 999 放入格子 8,連續(xù)占用兩個(gè)格子。但這樣,們剛剛的 mov 指令就得改改了,不但要表示 "存放" 這個(gè)含義,還得表示占用了多個(gè)格子。我們用 movb 表示只占 1 個(gè)字節(jié),用 movw 表示占用 2 個(gè)字節(jié)。那么,剛剛的三個(gè)數(shù)字,就分可以這樣用指令來表示了:movb?,?(3)movb?,?(6)movw?9,?(8)含義就是:把數(shù)字?29?放入內(nèi)存格子?3,占?1?字節(jié)把數(shù)字?38?放入內(nèi)存格子?6,占?1?字節(jié)把數(shù)字?999?放入內(nèi)存格子?8,占?2?個(gè)字節(jié)OK,既然有了 1 字節(jié)和 2 字節(jié)的的指令,不妨再設(shè)計(jì)下,用 movl 表示 4 字節(jié),movq 表示 8 字節(jié) ...movb?占用?1?字節(jié)movw?占用?2?字節(jié)movl?占用?4?字節(jié)movq?占用?8?字節(jié)不知不覺,類型系統(tǒng)就被你悄悄設(shè)計(jì)出了!當(dāng)然,雖然這只是個(gè)半成。二、變量你不斷地往不同格里放數(shù)據(jù)。比如我把我的年齡在 11 號格子(占 1 字節(jié)),把我的月薪放在 14 號格子(占 4 字節(jié))?,F(xiàn)在我們的內(nèi)存已經(jīng)非常混亂堵山,根本記不住原來的 3 號格子放的數(shù)據(jù)表示什么,11 號格子又表示什么,只能通過看數(shù)知道 14 號格子里放的確實(shí)是我的月薪。這該怎么辦呢?加一層抽象嘛!我們給這些放我們數(shù)據(jù)的格子,都貼上個(gè)標(biāo),就可以不用再記那些無意義格子編號了。這樣以來,其實(shí)們也不再關(guān)心,這些標(biāo)簽到底哪個(gè)格子里,只要給我找到格把我的數(shù)據(jù)放進(jìn)去就可以了。movb?,?amovb?,?bmovw?9,?cmovb?,?agemovl?47483647,?salary當(dāng)然,我還需要再通過這個(gè)標(biāo),把我剛剛放進(jìn)去的數(shù)據(jù)找出。這很簡單,但存在一個(gè)問題放進(jìn)去的時(shí)候,我們可以通過 movb,movw,movl 等知道占用多少個(gè)格子。而取出來的時(shí)候,標(biāo)章山上可沒有寫個(gè)數(shù)據(jù)占用了多少個(gè)格子,這有問題的。因此,在定義這個(gè)簽時(shí),不能光取個(gè)名字,還需有個(gè)信息就是,這個(gè)標(biāo)簽對應(yīng)數(shù)據(jù),占了多少個(gè)格子。我們效仿剛剛的存放操作,也規(guī)定系列單詞,來修飾這些標(biāo)簽,示占用了多少個(gè)格子。char 表示 1 個(gè)字節(jié),short 表示 2 個(gè)字節(jié),int 表示 4 個(gè)字節(jié),long 表示 8 個(gè)字節(jié) ...于是乎剛剛的 5 個(gè)數(shù)據(jù),就可以表示為如下指令:char?a?=?29;char?b?=?38;short?c?=?999;char?age?=?18;int?salary?=?2147483647;行了,我也別藏著掖著了,相信大家也知道,這里關(guān)于是 C 語言的寫法,而剛剛那堆 mov 是匯編語言的寫法。這些 char a,char b,int salary 等,就是變量!記住,變量不但要有字,還得有類型!三、變量定與賦值其實(shí),剛剛的寫法,是變量的定義與賦值操作寫在一了。比如有如下語句:int?a?=?1;實(shí)際上是分成兩步的://?變量的定義int?a;//?變量的賦值(此處也可以叫韓流量的初始化)a?=?1;其中變量的定義是為了方便程序員楮山面去用它,這部分不給 CPU 看的。而變量的賦值才是真正九歌內(nèi)存中把數(shù)據(jù)放去,這部分才真正涉及 CPU 具體指令的執(zhí)行。也就是說,如果你僅僅定義畢文一個(gè)變量 int a; 但是沒有給它初始化的賦值操作,灌灌么最終在 CPU 執(zhí)行指令的時(shí)候,這個(gè)定義根本就沒有任??體現(xiàn)。四、針現(xiàn)在,讓我們把內(nèi)存清空,到一開始的那一片凈土上。我來搞點(diǎn)花樣。我將我的密碼(1234)存儲在一個(gè) short a 中,假設(shè)這個(gè)變量 a 被放在了 6 號格子處。同時(shí),我將這個(gè)變量 a 的地址,也就是 6 這個(gè)數(shù)字,存儲在另一個(gè)變量 int p 中,假設(shè)這個(gè)變量 p 被放在了 1 號格子處。這樣,我尋找我密碼的方式,就是先通過 p 所在的內(nèi)存地址找到里面存的值,也就是 a 的內(nèi)存地址 6,再通過 a 的內(nèi)存地址找到里面存的值,也就是我要找密碼 1234。我們可以用下面的代碼來表示剛剛的存放邏。short?a?=?1234;//?假設(shè)?a?被放在了?6?號格子處int?p?=?6;這里的 p 和 a 都是變量,只不過,p 這個(gè)變量有點(diǎn)特殊,它里面存放的值是個(gè)內(nèi)存地址,我們把 p 這個(gè)變量形象地成為指針變量,簡指針。不過,這樣有幾個(gè)問題我一個(gè)個(gè)來說。1. 取地址首先,我們在編碼階段泰逢無法知也無需知道變量 a 會存放在哪里,不然就失去了標(biāo)簽類含,又回到了需要關(guān)心具體的內(nèi)地址(也就是格子編號)的時(shí)了。所以,我們應(yīng)該有個(gè)方法來在編碼階段表示變量 a 的地址的含義,姑且就叫做 &a 吧。那么我們的代碼,就可以優(yōu)化為:short?a?=?1234;//?假設(shè)?a?的地址是?6//?那么下面的?p?就等于?6int?p?=?&a;用圖來表示就是:2. 指針變量本身的大小視角放到這個(gè)變量 p 身上,雖然本質(zhì)上這個(gè)變量 p 里面存放的就是一個(gè)數(shù)值,假設(shè)是 6,但是它卻表示了一個(gè)內(nèi)存地址的值如果讓程序員隨便規(guī)定這個(gè)變 p 的數(shù)據(jù)類型(也就是占多少個(gè)字節(jié)),那顯然道家易出問。比如內(nèi)存地址是 999,那么我用一個(gè) char 類型的變量 p 來存放它,就會有問題。我們在編碼階段是無繡山確一個(gè)變量的內(nèi)存地址是多少的所以用什么類型的變量來存放,也是無法判斷的。所以,最妥的辦法就是,用一個(gè)完全能納所有內(nèi)存地址范圍的變量類來存放指針變量。我們姑且認(rèn)我們是在一個(gè) 32 位的系統(tǒng)上,那么用一個(gè) 4 字節(jié)大小的變量來存放,就可以了文文(然,實(shí)際上這取決于你的編譯的位數(shù))現(xiàn)在,我們的指針變所占用的內(nèi)存大小,就是固定 4 個(gè)字節(jié),也就是 4 個(gè)格子。程序員無需也無法修改個(gè)大小,那么我們就可以把 p 前面的數(shù)據(jù)類型去掉了。short?a?=?1234;p?=?&a;3. 指針變量的類型剛剛我們解決了指針變量身所占用的內(nèi)存大小,但是還一個(gè)問題沒有解決,就是指針量里存放的內(nèi)存地址處的變量大小。也就是說,上面的指針量 p 里雖然存放了變量 a 的內(nèi)存地址 6,但是指針變量 p 卻沒有任何信息,來說明內(nèi)存白翟址 6 處的變量,它的大小是多少。假如,我們認(rèn)內(nèi)存地址 6 處的變量是個(gè) char 類型,也就是只占用了一個(gè)字節(jié)猼訑那么顯然,會取一個(gè)不符合預(yù)期的值。當(dāng)然,果認(rèn)為 6 處的變量是個(gè) int 類型,占 4 個(gè)字節(jié),雖然數(shù)值上可能沒有信題,但某種程度上講也是不太符合預(yù)的(假如 8 號和 9 號格子里有其他內(nèi)容,那就更不符預(yù)期了)。所以,必須得完全照變量本身的類型,也就是 short 類型來讀取此內(nèi)存地址處的值,才是正確的。那我應(yīng)該如何表示這個(gè)信息呢?即何表示,變量 p 是一個(gè)指針,且這個(gè)指針里面存放的內(nèi)存址處的變量的類型是 short。很好辦,直接說答案吧。short?a?=?1234;short?*?p?=?&a;p 前面的 * 表示變量 p 是一個(gè)指針類型,再前面的 short 表示該指針指向的內(nèi)存地址處的變量長乘是個(gè) short 類型的變量。當(dāng)然,更準(zhǔn)確的說法是,指反經(jīng) p 將會按照 short 類型的變量來讀取它指向的內(nèi)邽山,至于里到底是什么,無所謂。注意,這個(gè) short 并不是表示指針變量本身的大小占 2 個(gè)字節(jié),指針變量本身我們前說過了,就是固定的 4 字節(jié)大小。不過總是這樣說太繞口,今后我們就說,變量 p 是個(gè) short * 類型的指針,就可以了。用上面的圖形地說就是,右邊變量 a 藍(lán)色的填充,表示 a 是個(gè) short 類型,而外面的虛線框框,表示指西岳 p 按照 short 類型的變量來 "解讀" 內(nèi)存地址 6 處的數(shù)值。兩者相匹配了,就是 "正確" 的編程代碼了。當(dāng)然,這里的 "正確",是說給程序員聽的,CPU 才不關(guān)心。4. 指針?biāo)赶虻闹瞪厦嫖覀円呀?jīng)可獲得某個(gè)變量的地址,比如獲 a 的地址就是:&a同時(shí)我們也可以定義一個(gè)指針變量,如定義一個(gè) short * 類型的指針變量 p:short?*?p;并且,我們通過直接賦值操作,可以給指針武羅量行初始化:p?=?&a;當(dāng)然,上面的代碼也可以連起來寫即指針變量 p 的定義與初始化寫在同一行:short?*?p?=?&a;不過,我們還沒有一個(gè)方法,來表示指針變 p 所指向的那塊內(nèi)存。那我們就發(fā)士敬一個(gè),比如想把 p 所指向的那塊內(nèi)存的值改為 999,可以這樣寫。*p?=?999;這里的 * 就表示 "指向" 的含義,即 *p 不是說 p 這個(gè)變量的內(nèi)存地址,而是把 p 這個(gè)變量里存的內(nèi)容當(dāng)做內(nèi)存地址來看,指這個(gè)內(nèi)存地址。用圖表示就是所以連起來一個(gè)完整的程序就:short?a?=?1234;//?指針的定義short?*?p;//?指針的初始化,也即指針變量本赤鱬的值p?=?&a;//?指針變量所指向的內(nèi)存地址的值*p?=?999;執(zhí)行過后,a 的值會變成 999,或者說 6 號格子與 7 號格子里的值會變成 999。5. 指針的加減如果對一個(gè)普通變量 +1,比如說:int?a?=?1;int?b?=?a?+?1;那顯然,b 的值應(yīng)該是 2,毫無疑問。但是如果對一個(gè)指針變 +1,會怎么樣呢?int?a?=?1;int?*p?=?&a;int?*p2?=?p?+?1;我們假設(shè)變量 a 放在了格子 1 處。變量 a 的值是什么,以及變量 p 被放在了哪里,我們都不關(guān)心,就只盯著 p 的值看,顯然,一開始的時(shí)候是 1。(為方便演示,下面的圖直接表修鞈 p 所指向的內(nèi)存地址,而不是 p 本身所在的內(nèi)存地址)我們先不考慮,p + 1 應(yīng)該是幾,如果讓你來設(shè)計(jì)這個(gè)鴆言你覺得 p + 1 是幾比較好呢?我認(rèn)為,只有兩種較為理的設(shè)計(jì)。第一種,p + 1 就等于 2,就簡簡單單當(dāng)做數(shù)值進(jìn)行加法運(yùn)算而已。第二,p + 1 等于 5,即跨過一個(gè) p 所指向的內(nèi)存單元的數(shù)據(jù)類型的大小,也就是 4 字節(jié)的 int。你覺得那種比較合理呢?那顯然是第二種!不然和普通變量有啥區(qū)別了你既然設(shè)計(jì)出了指針變量這個(gè)意,就需要讓它發(fā)揮點(diǎn)方便程員的作用,這才是你設(shè)計(jì)它的正目的。當(dāng)然你不服,你就想這個(gè) int * 類型的指針變量,就真真正正在數(shù)值上只 +1,也就是讓 p 等于 2,該怎么辦呢?很簡單,分成步就好了:第一步,把 int * 類型的 p 強(qiáng)轉(zhuǎn)為 char * 類型的 p。第二步,p + 1。第三步,再把 char * 類型的 p 強(qiáng)轉(zhuǎn)為 int * 類型。完事!用代碼表示就是:p?=?(int?*)((char?*)p?+?1);你會看到,C 語言項(xiàng)目中經(jīng)常使用這樣的玩法。柜山然,你這一頓花里胡的操作,在 CPU 眼里,就是對一個(gè)內(nèi)存地址處的值簡簡單地 +1 而已。五、指針的本質(zhì)我們看上面鴣一張圖:其,別看上面又 short * p 又 short a 的,這是給程序員和編譯器看的在 CPU 眼里,根本沒有這些眼花繚亂的標(biāo)簽,以及帝江花門的解讀,就是 0 ~ 4 號格子里存了個(gè)數(shù)字 6,然后 6 ~ 7 號格子里存了個(gè)數(shù)字 1234,僅此而已。更進(jìn)一步講,其實(shí)就只是 1 號格子里存儲了數(shù)字 6(234 號格子是空的),6 號格子里存儲了數(shù)字 12,7 號格子里存儲了數(shù)字 34。(當(dāng)然實(shí)際得轉(zhuǎn)換成二進(jìn)制,再結(jié)合端序還是小端序來看哈,我這就是簡單直觀告訴大家 CPU 才不管那么多,就一個(gè)格子一個(gè)格子化蛇放數(shù)字就完事了)所,我們經(jīng)常聽書上講,讓大家定要記住,指針變量中只能存地址,不要將一個(gè)整數(shù)或任何他非地址類型的數(shù)據(jù)賦給一個(gè)針變量了。這種說法就非常別,很多書上,即想講清楚指針本質(zhì),又想講清楚指針的注意項(xiàng),混雜在一起,讓讀者即沒搞清楚指針的本質(zhì),又不知道針的注意事項(xiàng)。真糾結(jié)!說實(shí),就光看書而沒有經(jīng)過大量 C 語言的實(shí)踐,誰能記得住或者理解透徹那些注意事項(xiàng)。常羲經(jīng)大量 C 語言實(shí)踐的人,指針早就融入進(jìn)血液中了,誰還來你講指針的本質(zhì)?所以說,這我覺得非常之矛盾。實(shí)際上,針變量的本質(zhì)和普通變量是一的:普通變量,寫個(gè) short a,是在告訴編譯器,當(dāng)我 a = 1 時(shí),你給我找到一塊 2 字節(jié)的內(nèi)存,把 1 填充進(jìn)去。指針變量,寫個(gè) short * p,是在告訴編譯器兩件事情:當(dāng)我 p = xxx 時(shí),你給我找到一塊 4 字節(jié)的內(nèi)存(我們假設(shè)指針本身的大小固唐書 4 字節(jié)),把 xxx 填充進(jìn)去,這就和普通變量完全白鵺樣;當(dāng)我 *p = yyy 時(shí),你給我找到 xxx 內(nèi)存地址,并且按照 short 類型也就是 2 字節(jié)大小,把 yyy 填充到這里。所以,誰說不能把個(gè)整型變量賦給指針了,我這就把一個(gè)整型變量 xxx 賦給指針 p 了么,我賦值的時(shí)候就說它是整型變量了,貍力么吧?但是我用它的時(shí)候,我 *p 又把 xxx 看做是一個(gè)內(nèi)存地址了,就去找內(nèi)存 xxx 的地方,又怎么的吧?用代碼來表示就是:我強(qiáng)行把一個(gè)型數(shù)值 6 賦值給指針變量 p,然后 *p 去訪問內(nèi)存地址 6 并修改那個(gè)地方的值:int?*?p?=?6;*p?=?999;我還可以把一個(gè)地址值,強(qiáng)行賦值給一個(gè)普通量:int?a?=?1;int?b?=?&a;這時(shí)普通變量 b 里面存儲著 a 的地址,我 *b 也同樣可以訪問到 a 并修改它的值:*b?=?999;當(dāng)然如果你真這么寫編譯器會報(bào)錯(cuò),但沒關(guān)系,們可以先把普通變量 b 強(qiáng)轉(zhuǎn)為指針變量,然后再 * 它:*(int?*)b?=?999;你還可以玩些更花哨的,先 & 取地址,再 * 取值,雖然沒啥用:*((int?*)*(&p))?=?999;假如 a 的地址是 6 的話,其實(shí)你這些花里胡哨的操作最后到人家 CPU 眼里,就是一條簡單的指令:movl?9,?(6)就是想把 999 放在 6 號格子嘛!所以,不要把指針想得多么復(fù)和神圣,它就是方便了程序員程,同時(shí)告訴編譯器應(yīng)該怎么譯成最終的指令。你寫了個(gè) *p,就是把 p 的值當(dāng)做內(nèi)存地址去訪問,在匯編語言層面是加了個(gè)括號:p)你寫了個(gè) &a,就是取出變量 a 的內(nèi)存地址,在匯編語言層面就是 lea 指令:lea?a,?xxx你如果寫了個(gè) ***p 那就是,相當(dāng)于加了三次括號:((p)))當(dāng)然啦,以上都是方便理解的偽指令,具體落到真正的匯編語言,我會在后的章節(jié)中講述,直接從匯編語理解指針,你就會發(fā)現(xiàn)指針就個(gè)工具人而已。六、寫在最后此,我們的《你管這破玩意叫針 -- 基礎(chǔ)篇》就講完了。我們從最開始的內(nèi)存格子出發(fā)逐漸推導(dǎo)出類型系統(tǒng)和變量的用,進(jìn)而再引出本質(zhì)上和普通量沒有任何區(qū)別的指針變量,后再推導(dǎo)出指針變量相關(guān)的操,帶你看清了指針的本質(zhì)。你要去記本文的知識點(diǎn),重在整推導(dǎo)的過程,要去理解指針想決的問題是什么,它的合理性哪,哪一部分信息是給程序員編譯器看的,哪一部分操作最又是真正落實(shí)到 CPU 指令的,這些才是關(guān)鍵。當(dāng)然,我是給你簡單總結(jié)下知識點(diǎn)相關(guān)部分,其實(shí)簡單說,就這么幾事。定義一個(gè)指針:int?*?p;賦值或初始化一個(gè)指針:p?=?&a;修改指針的內(nèi)容:*p?=?999;指針的加減(其實(shí)到后面講的數(shù)組才有值):p?=?p?+?1;完事,就這些!最后,給大家推兩個(gè)網(wǎng)站。一個(gè)是可以將 C 語言代碼實(shí)時(shí)編譯成匯編代碼你可以用它來自己玩指針做實(shí),看它最終到 CPU 指令層面是什么樣。https://godbolt.org一個(gè)是 GNU C 手冊,里面對各種語法和作用講泰逢的非常清楚不要再用搜索引擎搜博客了。https://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html比如講類型系統(tǒng)里的整型類型:再比如講指針的畢文義和初化:我相信本文看下來,一定人想問,short * p 是不是應(yīng)該寫成:short?*p或者short*?p自己去上面的文檔里找答案即可。OK,本文到這里就終于要結(jié)束了,在接下來的進(jìn)階篇里,我會述二級指針、數(shù)組、函數(shù)指針字符串、結(jié)構(gòu)體、結(jié)構(gòu)體數(shù)組指針等內(nèi)容。雖然說是進(jìn)階篇但我認(rèn)為,指針的本質(zhì)反而是階,而指針的進(jìn)階反而是基礎(chǔ)因?yàn)榧偃缋斫饬松鲜龅囊磺校?面的所謂指針進(jìn)階玩法,都可通過指針的本質(zhì)以及語言設(shè)計(jì)合理性,推導(dǎo)出來,再往后無是需要花時(shí)間熟練使用和掌握了。所以,理解好今天的內(nèi)容非常重要? 


余翠華 郭虎

發(fā)表于10小時(shí)前

回復(fù) 湯姆·提克威 : IT之家 1 月 9 日消息,根據(jù)網(wǎng)友 @tarunvats33 爆料,三星正印度為三 Galaxy S20 機(jī)型測試 OneUI 5.1 版本更新,在固服務(wù)器上現(xiàn)了 One UI 5.1 測試固件 G980FXXUFHWA1。IT之家了解,三星 Galaxy S20 系列已經(jīng)去年 11 月獲得安卓 13 / OneUI 5.0 系統(tǒng)更新推送,前推測該列無法再得 OneUI 5.1 等后續(xù)更新。不現(xiàn)在來看三星還是定提供 5.1 更新。OneUI 5.1 同樣基于安卓 13 系統(tǒng),但會進(jìn)一步化系統(tǒng)性提高運(yùn)行定性。在 SDC 2022 上,三星展了各種新能和個(gè)性工具。由未知原因很多功能 One UI 5.0 更新中并未上線而在 OneUI 5.1 中會提供包括新鎖屏工等諸多新性。Galaxy S20 在上線初期搭的是基于卓 10 的 OneUI 2.1 系統(tǒng)。三星承諾會為該機(jī)供 3 大版本更新因此 OneUI 5.1 可以說是錦上花的一次新?

猜你喜歡

        <code id='630c4'></code><style id='ac06f'></style>
        • <acronym id='aa9e8'></acronym>
          <center id='1aacb'><center id='de9da'><tfoot id='72d0a'></tfoot></center><abbr id='468e7'><dir id='7d21b'><tfoot id='e0720'></tfoot><noframes id='8d544'>

          • <optgroup id='504b8'><strike id='9a7a5'><sup id='f0863'></sup></strike><code id='b05e7'></code></optgroup>
              1. <b id='f4dac'><label id='5279f'><select id='6274e'><dt id='4f383'><span id='85d3e'></span></dt></select></label></b><u id='cc4ad'></u>
                <i id='581bf'><strike id='9bda6'><tt id='c00bc'><pre id='81000'></pre></tt></strike></i>

                    <code id='ea73e'></code><style id='5f436'></style>
                  • <acronym id='616d1'></acronym>
                    <center id='1aede'><center id='361db'><tfoot id='f7450'></tfoot></center><abbr id='3695d'><dir id='8af7d'><tfoot id='464c1'></tfoot><noframes id='bb74a'>

                  • <optgroup id='0c55c'><strike id='92a17'><sup id='10cef'></sup></strike><code id='17cd1'></code></optgroup>
                      1. <b id='2126f'><label id='2659c'><select id='85dbd'><dt id='27151'><span id='04c03'></span></dt></select></label></b><u id='69f87'></u>
                        <i id='7d307'><strike id='5d014'><tt id='8cc52'><pre id='01edc'></pre></tt></strike></i>

                        会宁失踪女孩最新消息
                        熱度
                        70965
                        點(diǎn)贊

                            <code id='d485b'></code><style id='24d0c'></style>
                          • <acronym id='baf30'></acronym>
                            <center id='8b12b'><center id='f6c57'><tfoot id='11183'></tfoot></center><abbr id='a03c6'><dir id='ad9a8'><tfoot id='d0ba5'></tfoot><noframes id='e7d7f'>

                          • <optgroup id='48af1'><strike id='7eb97'><sup id='492be'></sup></strike><code id='66390'></code></optgroup>
                              1. <b id='7314d'><label id='bd085'><select id='45778'><dt id='1c8b9'><span id='49ef4'></span></dt></select></label></b><u id='65573'></u>
                                <i id='dd135'><strike id='abd8b'><tt id='797ed'><pre id='fc120'></pre></tt></strike></i>

                                友情鏈接:

                                中國新聞網(wǎng) 中青在線 火燒紅蓮寺 東京復(fù)仇者 地球脈動(dòng)