下載列表
- 1月 23 週三 200800:25
sonyericsson 最新 手机主题创建器3.19 下載
- 1月 22 週二 200807:29
一個曾經感動了千萬人的 真人真事 ! 姍發現了父親臉上的淚,他低低地問姍:「你是不是真的喜歡這個男孩,他可靠嗎?」姍望著自己的腳尖,點了點頭。她聽見父親歎了口氣:「好吧,那你們準備結婚吧……」
一個曾經感動了千萬人的 真人真事 !
姍發現了父親臉上的淚,他低低地問姍:「你是不是真的喜歡這個男孩,他可靠嗎?」姍望著自己的腳尖,點了點頭。她聽見父親歎了口氣:「好吧,那你們準備結婚吧……」
午夜十分,姍從昏迷中醒來,渾身卻一點力氣也沒有,腦子裡空白一片,她不知道自己睡了多久,彷彿一個世紀般長久,重症病房的呼吸機還在幫助她呼吸,她 努力想坐起來,腿腳卻很不聽使喚。趴在她床邊的男人都被異樣的聲音驚醒,抬起了他的頭,噴湧出淚水,撕心地大喊:「大夫,大夫,她醒了,她醒了…」
姍睜大了眼睛,看清楚了這個男人,眼窩深陷,面容憔悴,兩鬢泛白,皺紋刻在眉間。姍看著他,親切在心裡瀰漫開來,「爸爸……」姍輕輕叫了聲。男人愣了一下,猛然緊緊抱住了姍,哽咽著「你終於醒了,你知不知道你昏迷了四年了…」淚水落在姍臉上。
姍的身體還很虛弱,美麗的臉顯得有些蒼白,對於從前的事情她想不起來,從爸爸那裡知道了關於她的故事:她原來是家銀行的出納,有著很愛她的父母,還有 一個很愛她的男友,正在婚禮的前個月,銀行內部的保安起了歹心,一天中午,在她和另一個同事值班的時候,持槍搶劫了銀行。她和同事大聲呼救,被保安一人開 了一槍,同事當場死亡,姍腹部中槍後仍然和保安博鬥,糾纏中頭部咂到了窗台。姍的手術整整做了六個小時,儘管極力搶救保住了她的性命,但是因為腦部受到了 強烈的撞擊,姍就再也沒醒來……姍的母親受了很大的刺激,回家的路上被一輛貨車撞倒,帶著無限的牽掛和遺憾離開了人世。
幾年間,父親四處求醫,姍也輾轉來到了這個城市的醫院,但得到的結論都有是一樣的:她醒來的機會幾乎是零,就算是醒來,智力也會像幾歲的孩子一樣。父親對這個晴天霹靂的結果並沒有死心,他四處借錢,哪怕有一點點期望也不放棄。
為了籌措昂貴的醫藥費,他賣掉了家裡的房子,但是很快就所剩無幾。為了早點治好姍,節省開支,他白天在建築工地揮汗如雨地幹活,晚上就到醫院守著姍, 餓了就喝開水就著饅頭充飢,困了就在姍的床邊打盹,長期的營養不良和勞累也導致了身體的虛弱,但是他有信心,他一定能等到姍睜開眼睛。
經過了一個月的康復治療後,姍出院了,只是說話還有點含糊,還要在這個城市繼續呆下去,定期到醫院做複查治療。父親帶著她租了一間房,白天照顧姍的生活,晚上等姍睡下去後揀些瓶瓶罐罐的,好換來一點微薄的收入。
姍的氣色逐漸好了起來,並學會了自己穿衣、自己做飯。
父親給你買來了小學的課本,一點一點地教她,慢慢地,姍能看書讀報了,並且吐字漸漸清晰。複查的時候主治醫師驚訝不已,為了減輕他們的負擔,答應要介紹姍到醫院來做清潔工。
命運之神終於慢慢的對姍露出了笑臉。
半年之後,姍的身體終於康復了,並且通過自學學會了很多知識,現在報了夜校,她想找份好點的工作好好地報答她的父親。她在醫院工作得很勤奮,工作之餘 還幫助病人的家屬。病人和家屬都很感激她,知道了她的遭遇後更加吹噓不已,讚歎他父親多麼的偉大,有點老人更是淚漣漣地歎息:多好的孩子啊,真是命苦啊。 姍總是微笑著說:「命運對我已經夠好的了,起碼我現在還活著。」
溫柔善良的姍引起了一個叫凡的年輕醫生的好感,他深深被姍的精神所打動,他開始暗暗關心起姍,知道了姍在學習,他就把自己以前的學習資料全部搬到醫院 給姍,還指導姍學習。經過慢慢的接觸,姍也感覺到了凡的許多優點:幽默、善良、博學。兩顆心慢慢貼近了,姍覺得幸福已經開始降臨了。又是一年過去了。
如果不是那天和凡一起上街,姍可能永遠這麼幸福下去。
情人節前一天,凡抑制不住的興奮,因為他決定明天就向珊求婚。中午休息時間,凡和姍走在街頭,經過一家銀行,凡決定今天就去給姍買一隻結婚鑽戒,他拉 著姍快步走了進去。銀行的人不是很多,姍康復之後一直沒去過,她記得父親總是帶她繞道而行。大廳裡人很少,三兩個人辦理業務,姍四處看著,記憶深處的東西 被觸動了,她頭痛欲裂,卻控制不住地往下想,她記起了那次搶劫,但又從大腦裡消失了……姍眩暈了,軟軟地倒在了地上。
姍睜天眼睛,發現自己已經在醫院裡,看見凡焦急的眼神。凡握住她的手:「對不起,姍,我不該帶你去那裡。對不起……」
姍帶著凡回家,凡有點侷促不安。父親應聲開門,一開門就緊張地抱住了姍:「姍姍,你去哪裡了,急死我了,沒什麼事情吧,是不是又頭痛了,想不起來的事 情就不要去想了…」父親這時才看見姍旁邊緊張不已的凡,凡上前對他握了握手:「伯父,你好,我是姍的同事。」父親什麼話也沒說,轉身進了屋裡,凡拉著姍跟 在後面。
在珊的小房間裡,凡真誠地對她父親說,希望能永遠和姍在一起,以後就由他來照顧他們兩父女。父親揮了揮手,半響後說:「你先回去吧,我考慮一下。」
送凡出門後,姍發現以父親的淚。他低低地問姍:「你是不是真的喜歡這個男孩,他可靠嗎?」姍望著自己的腳尖,點了點頭。她聽見父親歎了口氣:「好吧,那你們準備結婚吧……」
一切都在進行著,姍的臉上整天掛著幸福的微笑,和凡看房子,定傢俱,婚期漸漸臨近。
姍是在結婚前天的早上發現父親不見了的。她原以為他去了工地,於是就像往常一樣父親放工回來,但是很遲了都不見父親。在父親的桌子上,姍發現了一封信,她看到信封上寫著「姍姍親啟」。她皺了皺眉頭,猶豫了一下後拆了信。
姍發現了父親臉上的淚,他低低地問姍:「你是不是真的喜歡這個男孩,他可靠嗎?」姍望著自己的腳尖,點了點頭。她聽見父親歎了口氣:「好吧,那你們準備結婚吧……」
午夜十分,姍從昏迷中醒來,渾身卻一點力氣也沒有,腦子裡空白一片,她不知道自己睡了多久,彷彿一個世紀般長久,重症病房的呼吸機還在幫助她呼吸,她 努力想坐起來,腿腳卻很不聽使喚。趴在她床邊的男人都被異樣的聲音驚醒,抬起了他的頭,噴湧出淚水,撕心地大喊:「大夫,大夫,她醒了,她醒了…」
姍睜大了眼睛,看清楚了這個男人,眼窩深陷,面容憔悴,兩鬢泛白,皺紋刻在眉間。姍看著他,親切在心裡瀰漫開來,「爸爸……」姍輕輕叫了聲。男人愣了一下,猛然緊緊抱住了姍,哽咽著「你終於醒了,你知不知道你昏迷了四年了…」淚水落在姍臉上。
姍的身體還很虛弱,美麗的臉顯得有些蒼白,對於從前的事情她想不起來,從爸爸那裡知道了關於她的故事:她原來是家銀行的出納,有著很愛她的父母,還有 一個很愛她的男友,正在婚禮的前個月,銀行內部的保安起了歹心,一天中午,在她和另一個同事值班的時候,持槍搶劫了銀行。她和同事大聲呼救,被保安一人開 了一槍,同事當場死亡,姍腹部中槍後仍然和保安博鬥,糾纏中頭部咂到了窗台。姍的手術整整做了六個小時,儘管極力搶救保住了她的性命,但是因為腦部受到了 強烈的撞擊,姍就再也沒醒來……姍的母親受了很大的刺激,回家的路上被一輛貨車撞倒,帶著無限的牽掛和遺憾離開了人世。
幾年間,父親四處求醫,姍也輾轉來到了這個城市的醫院,但得到的結論都有是一樣的:她醒來的機會幾乎是零,就算是醒來,智力也會像幾歲的孩子一樣。父親對這個晴天霹靂的結果並沒有死心,他四處借錢,哪怕有一點點期望也不放棄。
為了籌措昂貴的醫藥費,他賣掉了家裡的房子,但是很快就所剩無幾。為了早點治好姍,節省開支,他白天在建築工地揮汗如雨地幹活,晚上就到醫院守著姍, 餓了就喝開水就著饅頭充飢,困了就在姍的床邊打盹,長期的營養不良和勞累也導致了身體的虛弱,但是他有信心,他一定能等到姍睜開眼睛。
經過了一個月的康復治療後,姍出院了,只是說話還有點含糊,還要在這個城市繼續呆下去,定期到醫院做複查治療。父親帶著她租了一間房,白天照顧姍的生活,晚上等姍睡下去後揀些瓶瓶罐罐的,好換來一點微薄的收入。
姍的氣色逐漸好了起來,並學會了自己穿衣、自己做飯。
父親給你買來了小學的課本,一點一點地教她,慢慢地,姍能看書讀報了,並且吐字漸漸清晰。複查的時候主治醫師驚訝不已,為了減輕他們的負擔,答應要介紹姍到醫院來做清潔工。
命運之神終於慢慢的對姍露出了笑臉。
半年之後,姍的身體終於康復了,並且通過自學學會了很多知識,現在報了夜校,她想找份好點的工作好好地報答她的父親。她在醫院工作得很勤奮,工作之餘 還幫助病人的家屬。病人和家屬都很感激她,知道了她的遭遇後更加吹噓不已,讚歎他父親多麼的偉大,有點老人更是淚漣漣地歎息:多好的孩子啊,真是命苦啊。 姍總是微笑著說:「命運對我已經夠好的了,起碼我現在還活著。」
溫柔善良的姍引起了一個叫凡的年輕醫生的好感,他深深被姍的精神所打動,他開始暗暗關心起姍,知道了姍在學習,他就把自己以前的學習資料全部搬到醫院 給姍,還指導姍學習。經過慢慢的接觸,姍也感覺到了凡的許多優點:幽默、善良、博學。兩顆心慢慢貼近了,姍覺得幸福已經開始降臨了。又是一年過去了。
如果不是那天和凡一起上街,姍可能永遠這麼幸福下去。
情人節前一天,凡抑制不住的興奮,因為他決定明天就向珊求婚。中午休息時間,凡和姍走在街頭,經過一家銀行,凡決定今天就去給姍買一隻結婚鑽戒,他拉 著姍快步走了進去。銀行的人不是很多,姍康復之後一直沒去過,她記得父親總是帶她繞道而行。大廳裡人很少,三兩個人辦理業務,姍四處看著,記憶深處的東西 被觸動了,她頭痛欲裂,卻控制不住地往下想,她記起了那次搶劫,但又從大腦裡消失了……姍眩暈了,軟軟地倒在了地上。
姍睜天眼睛,發現自己已經在醫院裡,看見凡焦急的眼神。凡握住她的手:「對不起,姍,我不該帶你去那裡。對不起……」
姍帶著凡回家,凡有點侷促不安。父親應聲開門,一開門就緊張地抱住了姍:「姍姍,你去哪裡了,急死我了,沒什麼事情吧,是不是又頭痛了,想不起來的事 情就不要去想了…」父親這時才看見姍旁邊緊張不已的凡,凡上前對他握了握手:「伯父,你好,我是姍的同事。」父親什麼話也沒說,轉身進了屋裡,凡拉著姍跟 在後面。
在珊的小房間裡,凡真誠地對她父親說,希望能永遠和姍在一起,以後就由他來照顧他們兩父女。父親揮了揮手,半響後說:「你先回去吧,我考慮一下。」
送凡出門後,姍發現以父親的淚。他低低地問姍:「你是不是真的喜歡這個男孩,他可靠嗎?」姍望著自己的腳尖,點了點頭。她聽見父親歎了口氣:「好吧,那你們準備結婚吧……」
一切都在進行著,姍的臉上整天掛著幸福的微笑,和凡看房子,定傢俱,婚期漸漸臨近。
姍是在結婚前天的早上發現父親不見了的。她原以為他去了工地,於是就像往常一樣父親放工回來,但是很遲了都不見父親。在父親的桌子上,姍發現了一封信,她看到信封上寫著「姍姍親啟」。她皺了皺眉頭,猶豫了一下後拆了信。
- 1月 22 週二 200806:52
C++ const 指針
const int * pOne;
int * const pTwo;
const int * const pThree;
pOne 是一個指向整型常量的指針。它指向的值是不能修改的。
pTwo 是一個指向整常的常量指針。它指向的值可以修改,但pTwo不能指向其他變量。
int * const pTwo;
const int * const pThree;
pOne 是一個指向整型常量的指針。它指向的值是不能修改的。
pTwo 是一個指向整常的常量指針。它指向的值可以修改,但pTwo不能指向其他變量。
- 1月 16 週三 200802:39
Ubuntu 7.10下解决VIM不能开启语法高亮功能
- 1月 16 週三 200802:01
Ubuntu 8.04 (Hardy Heron) 日期发布 Release Dates
自 Ubuntu 创始人 Mark Shuttleworth 上太空出名之后,Ubuntu 社区经理 Jono Bacon 近期的频频亮相,也一炮而红。早些时候,他在其博客和新闻组中发布 Ubuntu 下一个重要的版本 Ubuntu 8.04 (Hardy Heron),这是又一个长期支持版本LTS。具体介绍见上篇博客《Ubuntu 8.04 名称正式宣布 Hardy Heron》。 每一次 Ubuntu 的版本升级,都是一次新旅程的开始。我是从 5.04 以后开始使用 Ubuntu 的,感觉最近两次的版本升级(从6.10到7.04,从7.04到7.10)改进比较大,特别是用户界面和使用体验上。因此非常期待 Ubuntu 8.04 尽早发布。那让我们一起追踪 Ubuntu 8.04 (Hardy Heron) 重要日子。 以下是 Ubuntu 8.04 (Hardy Heron) 重要日期安排:
- 1月 16 週三 200801:41
VIM 使用
VIM 简介
VIM 是 Unix 世界里极为普遍的全萤幕文书编辑器,几乎可以说任何一台 Unix 机器都 会提供这套软体。熟悉 DOS 下的文书处理後,也许会感到 VIM 并不好用;Unix 上也已经发展出 许多更新、更好用的文书编辑器,但是并不一定每一台 Unix 机器上都会安装这些额外 的软体。所以,学习 VIM 的基本操作还是有好处,让你在各个不同的机器上得心应手。 VIM 基本观念
Unix 提供一系列的 ex 编辑器,包括 ex, edit 和 VIM 。相对於全萤幕编辑器,现在 可能很难想像如何使用 ex, edit 这种行列编辑器(有人用过 DOS 3.3 版以前所附的 EDLIN 吗?)。 VIM 的原意是 "Vi IMproved",它是一个所见所得的编辑程式,也就是说可 以立刻看到操作结果。
也由於 VIM 是全萤幕编辑器,所以它必须控制整个终端屏幕哪里该显示些什麽。而终 端的种类有许多种,特性又不尽相同,所以 VIM 有必要知道现在所使用的是哪一种终 端。这是由 TERM 这个环境变数来设定,设定环境变数方面请查看所使用 shell 的说明。(除非执行 VIM 的时候回应 unknow terminal type ,否则可以不用设定。)
只要简单的执行 VIM 就可以进入 VIM 的编辑环境。在实际操作之前先对它有个概略的了 解会比较好。VIM 有两种模式,输入模式以及指令模式。输入模式即是用来输入文字资 料,而指令模式则是用来下达一些编排文件、存档、以及离开 VIM 等等的操作指令。当 执行 VIM 後,会先进入指令模式,此时输入的任何字元都视为指令。
VIM 是 Unix 世界里极为普遍的全萤幕文书编辑器,几乎可以说任何一台 Unix 机器都 会提供这套软体。熟悉 DOS 下的文书处理後,也许会感到 VIM 并不好用;Unix 上也已经发展出 许多更新、更好用的文书编辑器,但是并不一定每一台 Unix 机器上都会安装这些额外 的软体。所以,学习 VIM 的基本操作还是有好处,让你在各个不同的机器上得心应手。 VIM 基本观念
Unix 提供一系列的 ex 编辑器,包括 ex, edit 和 VIM 。相对於全萤幕编辑器,现在 可能很难想像如何使用 ex, edit 这种行列编辑器(有人用过 DOS 3.3 版以前所附的 EDLIN 吗?)。 VIM 的原意是 "Vi IMproved",它是一个所见所得的编辑程式,也就是说可 以立刻看到操作结果。
也由於 VIM 是全萤幕编辑器,所以它必须控制整个终端屏幕哪里该显示些什麽。而终 端的种类有许多种,特性又不尽相同,所以 VIM 有必要知道现在所使用的是哪一种终 端。这是由 TERM 这个环境变数来设定,设定环境变数方面请查看所使用 shell 的说明。(除非执行 VIM 的时候回应 unknow terminal type ,否则可以不用设定。)
只要简单的执行 VIM 就可以进入 VIM 的编辑环境。在实际操作之前先对它有个概略的了 解会比较好。VIM 有两种模式,输入模式以及指令模式。输入模式即是用来输入文字资 料,而指令模式则是用来下达一些编排文件、存档、以及离开 VIM 等等的操作指令。当 执行 VIM 後,会先进入指令模式,此时输入的任何字元都视为指令。
- 1月 16 週三 200801:33
两个非常实用的Linux命令
Quote Ctrl+L (换页,清屏)
Ctrl+R平时在console里操作,用的最多的莫过于clear,后来才发现有Ctrl+L这东东,如获至宝。
以前查询命令喜欢用↑和history,后来才发现Ctrl+R这个好命令。
另外:Quote Backspace (Ctrl-H)
Carriage Return (Ctrl-M)
Vertical Tab (Ctrl-K)
Horizontal Tab (Ctrl-I)
Line Feed or New Line (Ctrl-J) 这个好像是查询可用的命令
Form Feed or New Page(Ctrl-L)
Escape (Ctrl-[)
Bell (Ctrl-G) 这个有意思就是一个嘀
摘自Eterm Technical Reference
Ctrl+R平时在console里操作,用的最多的莫过于clear,后来才发现有Ctrl+L这东东,如获至宝。
以前查询命令喜欢用↑和history,后来才发现Ctrl+R这个好命令。
另外:Quote Backspace (Ctrl-H)
Carriage Return (Ctrl-M)
Vertical Tab (Ctrl-K)
Horizontal Tab (Ctrl-I)
Line Feed or New Line (Ctrl-J) 这个好像是查询可用的命令
Form Feed or New Page(Ctrl-L)
Escape (Ctrl-[)
Bell (Ctrl-G) 这个有意思就是一个嘀
摘自Eterm Technical Reference
- 1月 16 週三 200801:18
修改vim設定使用 vim 時顯示出行數
一般情狀下,進入vim 後是不會顯示出行數
如要此功能需要在 vim command 內下 :set nu! 方可
但這樣使用有點麻煩,如要讓每次都顯示則需修改 /etc/vim/vimrc 設定檔
vim /etc/vim/vimrc
如要此功能需要在 vim command 內下 :set nu! 方可
但這樣使用有點麻煩,如要讓每次都顯示則需修改 /etc/vim/vimrc 設定檔
vim /etc/vim/vimrc
- 1月 12 週六 200817:04
字符指针的特别之处
如果我们对一个非字符的指针进行操作,方法是这样的:
定义:int a=7; int *p=&a; 或者 int a=7; int *p; p=&a; 或者 int a=7; int *p; *p=a;
这样定义的原因是因为等号两边的类型必须匹配,int *p=&a; 等号左边定义的是一个指针,指针的内容是地址,所以等号右边也应该是地址,&a就是取空间a的地址,第二种情况 int *p; p=&a; 为什么不是 *p=&a 而是 p=&a; 因为在定义的时候“*”只是说明p是一个指针,而p也是一个变量,不过是储存地址的一种特殊的变量,对于变量使用,我们都是直接使用它的名字,就好象,我们定义个常量 const a=7; 我们要调用它的时候直接使用a就可以了,并不需要带上 const 修饰,这里也一样,用指针变量时并不需要带上“*”,而第三种情况中的“*”和第二种里面是不同的,这里的“*”是取内容符,与之相反的是取地址符“&”,分析一下,第三种情况中,等号左边是*p表示对指针p取内容,它的内容指向内存中的某个已经在开始通过 int *p; 定义好的空间里(比较确切一点的说法是,p在定义的时候,其内容里的地址指向内存中某个未知的空白区域,即未占用,不受保护的内存空间),这个空间里存放的数据类型是整型,所以等号的右边也应该是整型才能匹配,所以是 *p=a; 这里的“*”和定义时候的是不同的,这一点很重要。
其实上面的都是些题外话,我要说的其实是关于指针的输出的一些问题。我们利用上面定义好的进行输出操作。
输出指针的内容(即所指向空间的地址):cout<<p<<endl;
输出指针所指的内容(即指针内容所描述地址空间中的内容):cout<<*p<<endl;
指针对于字符的处理却有些特殊,和前面的非字符的指针输出处理要分开理解。
比如,我们定义一个 char a='A'; char *p=&a; 如果我们调用上面非字符指针的输出方式,结果如下:
方式1 cout<<p<<endl; 结果 A####(#表示乱码,不可识别) 并不是地址
方式2 cout<<*p<<endl; 结果 A 这和非字符的指针情况一样,输出指针指向的内容
而且我们直接操作 cout<<&a<<endl; 结果和方式1的结果是完全相同的
为什么方式1输出的不是地址呢?这里有一个特殊的处理,虽然这里的p的内容确确实实是一个地址,但是cout操作字符指针的话,它遇到地址,就会直接去寻找这个地址所指向的内容,并把它的空间里的机器数按照字符的规则转化成字符输出,直到遇到“\0”这个操作符才停止。所以我们直接输出p的时候,它先输出‘A’然后再继续读取后面的内存空间知道遇到“\0”,显示结果是“A+乱码”。
你肯定会说,为什么要这样呢,这样多不方便呀,其实这么做是有目的的,而且恰恰就是为了方便才这么设置的。因为这样就可以很容易的处理字符串了,而处理字符串是我们在计算机中用得很多的操作。
比如我们第一个字符串数组 char a[]="mantou"; a[]在内存中在7个字节,而不是6个,因为在mantou字符串后面还隐藏有一个“\0”,这时我们用 char *p=a; (这里不用&a是因为,a[]是一个数组,数组名a本身就是一个指针常量) 输出操作 cout<<p<<endl; 这里就不会输出地址,而是直接输出整个mantou字符串,很方便哈,如果我们 cout<<*p<<endl; 结果显示的是m,因为p是指向数组的首元素的地址的,就是指向这里的储存m的空间的地址,所以取p的内容(*p),只能输出一个m哦。
虽然通常情况下我们是不需要了解我们的数据地址的,但我也顺便说说,怎么得到字符指针的地址,也可以方便大家对内存地址的分配再做更深入的研究。
char a='A'; 如果这里直接输出 cout<<&a<<endl; 当然是不能输出地址的,原理上面已经说过了,cout遇到字符型地址就会转换成字符输出。我们可以用指针p先取得a的地址(char *p=&a;),但是这样用 cout<<p<<endl; 也并不能得到地址呀,做个小技巧,首先我们知道p中的内容本身就是地址,但是因为它是字符串,我们又不能直接输出它,所以呀,我们可以把指针里的内容(记载的是一个地址数据)强制转化成整型再输出 cout<<(int)p<<endl; 呵呵,这样就得到了这个指针里的内容——十进制型的地址,而我们知道,地址是用十六进制表示的,形式是 0x######## 0x后面加8位十六进制数,我们把我们先得到的十进制地址按照地址的表示形式用流操作转化成十六进制就可以了。代码如下:
cout<<"0x"<<setfill('0')<<setw(8)<<setiosflags(ios::uppercase)<<hex<<(int)p<<dec<<setfill(' ')<<endl; //流控制实现十六进制地址输出
注意不要忘了 #include<iomanip.h> 这个头文件哦
定义:int a=7; int *p=&a; 或者 int a=7; int *p; p=&a; 或者 int a=7; int *p; *p=a;
这样定义的原因是因为等号两边的类型必须匹配,int *p=&a; 等号左边定义的是一个指针,指针的内容是地址,所以等号右边也应该是地址,&a就是取空间a的地址,第二种情况 int *p; p=&a; 为什么不是 *p=&a 而是 p=&a; 因为在定义的时候“*”只是说明p是一个指针,而p也是一个变量,不过是储存地址的一种特殊的变量,对于变量使用,我们都是直接使用它的名字,就好象,我们定义个常量 const a=7; 我们要调用它的时候直接使用a就可以了,并不需要带上 const 修饰,这里也一样,用指针变量时并不需要带上“*”,而第三种情况中的“*”和第二种里面是不同的,这里的“*”是取内容符,与之相反的是取地址符“&”,分析一下,第三种情况中,等号左边是*p表示对指针p取内容,它的内容指向内存中的某个已经在开始通过 int *p; 定义好的空间里(比较确切一点的说法是,p在定义的时候,其内容里的地址指向内存中某个未知的空白区域,即未占用,不受保护的内存空间),这个空间里存放的数据类型是整型,所以等号的右边也应该是整型才能匹配,所以是 *p=a; 这里的“*”和定义时候的是不同的,这一点很重要。
其实上面的都是些题外话,我要说的其实是关于指针的输出的一些问题。我们利用上面定义好的进行输出操作。
输出指针的内容(即所指向空间的地址):cout<<p<<endl;
输出指针所指的内容(即指针内容所描述地址空间中的内容):cout<<*p<<endl;
指针对于字符的处理却有些特殊,和前面的非字符的指针输出处理要分开理解。
比如,我们定义一个 char a='A'; char *p=&a; 如果我们调用上面非字符指针的输出方式,结果如下:
方式1 cout<<p<<endl; 结果 A####(#表示乱码,不可识别) 并不是地址
方式2 cout<<*p<<endl; 结果 A 这和非字符的指针情况一样,输出指针指向的内容
而且我们直接操作 cout<<&a<<endl; 结果和方式1的结果是完全相同的
为什么方式1输出的不是地址呢?这里有一个特殊的处理,虽然这里的p的内容确确实实是一个地址,但是cout操作字符指针的话,它遇到地址,就会直接去寻找这个地址所指向的内容,并把它的空间里的机器数按照字符的规则转化成字符输出,直到遇到“\0”这个操作符才停止。所以我们直接输出p的时候,它先输出‘A’然后再继续读取后面的内存空间知道遇到“\0”,显示结果是“A+乱码”。
你肯定会说,为什么要这样呢,这样多不方便呀,其实这么做是有目的的,而且恰恰就是为了方便才这么设置的。因为这样就可以很容易的处理字符串了,而处理字符串是我们在计算机中用得很多的操作。
比如我们第一个字符串数组 char a[]="mantou"; a[]在内存中在7个字节,而不是6个,因为在mantou字符串后面还隐藏有一个“\0”,这时我们用 char *p=a; (这里不用&a是因为,a[]是一个数组,数组名a本身就是一个指针常量) 输出操作 cout<<p<<endl; 这里就不会输出地址,而是直接输出整个mantou字符串,很方便哈,如果我们 cout<<*p<<endl; 结果显示的是m,因为p是指向数组的首元素的地址的,就是指向这里的储存m的空间的地址,所以取p的内容(*p),只能输出一个m哦。
虽然通常情况下我们是不需要了解我们的数据地址的,但我也顺便说说,怎么得到字符指针的地址,也可以方便大家对内存地址的分配再做更深入的研究。
char a='A'; 如果这里直接输出 cout<<&a<<endl; 当然是不能输出地址的,原理上面已经说过了,cout遇到字符型地址就会转换成字符输出。我们可以用指针p先取得a的地址(char *p=&a;),但是这样用 cout<<p<<endl; 也并不能得到地址呀,做个小技巧,首先我们知道p中的内容本身就是地址,但是因为它是字符串,我们又不能直接输出它,所以呀,我们可以把指针里的内容(记载的是一个地址数据)强制转化成整型再输出 cout<<(int)p<<endl; 呵呵,这样就得到了这个指针里的内容——十进制型的地址,而我们知道,地址是用十六进制表示的,形式是 0x######## 0x后面加8位十六进制数,我们把我们先得到的十进制地址按照地址的表示形式用流操作转化成十六进制就可以了。代码如下:
cout<<"0x"<<setfill('0')<<setw(8)<<setiosflags(ios::uppercase)<<hex<<(int)p<<dec<<setfill(' ')<<endl; //流控制实现十六进制地址输出
注意不要忘了 #include<iomanip.h> 这个头文件哦
- 1月 09 週三 200813:43
超级DOS硬盘安装器 2.0 硬盘下安装ISO系统镜像 绿色版

这个程序不需要用光盘也能帮你实现在系统启动前进入系统安装界面,超级方便也不需要刻盘,真的是很好的东西,没有DVD刻录机的朋友有救了.关于部分网友说的有毒的问题,原创作者说明了,这是用易语言写的小程序,容易被某些国外杀毒软件误报
http://www.52aya.com/downinfo/1025.html# V2.0 我用不了
http://www.52z.com/soft/12193.html V1.0