#
在某些时候,我们可能需要在Win32窗口应用程序中打开控制台窗口,打印一些消息,或者作为当前程序的另外一个人机交互界面,或者为了帮助调试程序。为了达到这种效果,需要了解函数AllocConsole和C-Runtime的freopen函数。
AllocConsole函数会为当前的窗口程序申请一个Console窗口。这是MSDN上对AllocConsole的介绍:
AllocConsole
The AllocConsole function allocates a new console for the calling process.
BOOL AllocConsole(void);
函数调用成功,返回非零值,调用不成功则返回0.
在为当前窗口程序申请到console后,我们需要调用C-Runtime的freopen函数将标准输出(stdout)重定位到新申请的console。
freopen的原型如下:
FILE *freopen(
const char *path,
const char *mode,
FILE *stream
);
我们调用的时候是这么着传入参数的:
freopen("CONOUT$","w",stdout);
其中"CONOUT$"是指代当前console的特殊字符串,"w"表明以written模式打开这个console,stdout指代的是系统的标准输出设备。
下面是整个的代码:
if(AllocConsole())
{
freopen("CONOUT$","w",stdout);
printf("hello, world!");
}
总觉得自己在等什么,等一种可以惺惺相惜的感觉,等一种走某个时刻和某一个人挥洒一样的某种情怀的舒畅,等一种自己也说不清楚的桃源里的繁花朵朵。
但是人生却又总是奇怪的,也许即将揭开雾山的障霭,但又发觉自己心底在某一处害怕着。能害怕什么呢?无处能说清楚。这是你走了那么多路寻觅来的啊,你又怕什么呢?
还是怀念上上周末一个人走香巴拉的感觉,那天因为头一日走了香山,脚上本已起了水泡,但是因为看着天气自己还是忍不住想找点事情做,于是选择了走这条自己并不怎么认路的香巴拉。
其实喜欢的不是路,是路上的感觉。总觉得自己和世人走的很远,总觉得很多时候即使在和人一起喝酒其实自己也是寂寞的,总觉得有时候也很享受这种寂寞的感觉,总觉得有时候自己很无聊很无耻喜欢这样子一个人虐待自己,总觉得也许有一个港湾或许是最后的归宿可以一睡不醒,总觉得现在我不过是尘世的一个过客也许明日又将上路,总觉得,总觉得,总觉得有很多东西是这辈子就跟定我了,比如这种杀死人般的淡淡伤感。
听歌,没人知道你的感觉,你可以和很多人分享,但是一种心情却只能是自己的。在路上听歌,没人知道你在听歌,寂寞的人会说有风知道云知道,其实那不过是在自欺罢了,何处知道风云就了解你在听歌呢?没处只到。只是正因为无处知晓,所以我寂寞的觉得幸福。
还记得上上周末走向巴拉时在岔路口想的事情,还记得在坡上看到一对情侣的舞蹈在我当时的眼里如何之一如天人,还记得如何的清风中享受那《Nightingale》带来的空谷回响。
没事情是一如往常,我只是在享受这种感觉。享受这种一个人在路上,在路上寻觅,在路上踟蹰。
有时候想想,人生也许不要答案或者不要结果真的很好,我可以永远只想现在的如何,永远只需要知晓我现在的感觉,永远只需要在一次舞蹈之后擦拭自己受伤的灵魂无需知道有否另外一个观众。
可是人生偏偏的如此需要结果。
(作者:sophia20082007原文地址:http://www.see2say.com/Channel/Group/Detail.aspx?Id=7139)
永远,永远都只是我一个人在唱独角戏.没有观众,没有掌声。只有我一个主角,孤单的影子如影随形。不分昼夜,不知疲倦的演绎着,属于我自己的灿烂童话。 我明白,你外表的冷漠并不带表你内心的空洞,你总是习惯向世人隐藏你自己,你渴望被理解,又害怕被人剖析,我知道你讨厌赤裸裸的感觉. 我明白,你无助的时候一定像个不知所措的孩子,你坚强的外表下是柔软而敏感的心。我愿意借给你我隐形的肩膀,虽然不宽阔,但足以成为你的依靠。如果你愿意。 你要明白,我的独角戏永远只在黑暗中绽放,我不停的在寂寞中旋转跳舞,一连转了九十九个圈,裙摆盛开出迷离的花朵,孤单的我还是没有改变。 我明白,不是爱的人就可以和他在一起。宿命给我的结局,只是让我摊开掌心,里面是空洞的,我所做的一切都是捕捉的风,手里注定一无所有。没有什么东西能够因为不舍而获得怜悯。 爱情不应当只是一场惘然的轮回。 我不相信永远,我不拥有期待,也不需要诺言。 可能彼此陌生,或者不是; 只愿你曾记记得一个由我孤独演绎的,爱的轨迹画下的独角戏。
(原文地址:
http://blog.cz001.com.cn/index.php/56821/viewspace-863188.html)
告白
“岁月的金黄,一年一次供人分享;生命的金黄,一生一次错过就不再辉煌。”在这我漫漫的前半生中,也许我还很年少无知,也许此时只是人生的一个小小的开端。所以,总是很努力,很用心地去铺垫这段旅程的基石,希望以后能过得好一点,不要像从前,像现在这样。当然,我并不否认我是个幸运的人,因为起码这一切的一切并没有糟到极点,一路也算平平稳稳地走了过来,纵然不很精彩,也算是充实。我害怕错过,所以我依然很努力地去学更多的东西,去纺织那个将会成真的梦想。
虽然说“知足常乐”,我却不是这样一个人。我很难感到满足,我什么都想要,只要我想要,我就会尽最大努力争取。我总是“不饱”, 总也不会“常乐”。说穿了就是贪心与欲望占了上风。也许这一开始就是个错误,为什么要那么好胜?为什么要那么紧张地过着每一天?人生苦短,说过就过去了。不论我怎么活,太阳总是会从西边落下,明天依然会从东边升起。而每一个在世的人,就像夹在黎明与黄昏之间的那一堆星星。 是星星都会闪光,但为何一定要去做北极星?我也不清楚。似乎有一种压力,有一种负担,有一种过往的经历硬要我不甘平凡,然而我却依然很平凡,就像沙漠中的一粒小沙子。
十几年寒窗走了过来,却发现自己什么也不是,什么也不会,什么也没有。所以总是告诫自己:要把握眼前,在茫茫人海中分明地辨认出自己,在世界的角落找一个位置给自己。整天东奔西走,寻寻觅觅,让自己忙得没有时间去懊悔,去回忆,是因为害怕回忆里的酸楚湮没自己。
情缘
曾经,我害怕思家的遥远,也害怕陌生的天与地。人总要学着自己长大,学着攀上岁月的肩膀,到达各种陌生的地方。虽然这儿不是天堂,但我却找到了不必担心下雨的星空,找到了大海一样的包容。于是终于相信了“燃起木柴,关紧门窗,让温暖和你一起来临, 在这个寒冷的冬季。”这一句曾被遗忘过的话。
有同学曾对我说:“我们只是偶然出现在我们终将消失的地方。”的确如此,但既然冥冥中注定要相逢,我们就该相识、相知、相惜,趁着还没消失,让我们一起珍惜可以共度的每一刻,才不至于在分别的时候突然发现“我们总有太多的来不及,很多话来不及说,来不及听,来不及问,很多事情来不及做。我们唯一能做的只不过是在还来得及的时候,小心呵护眼前的拥有。”我们在这个地方相遇,是缘,将来散了,也是缘,只是缘浅了……
岁月流逝后,这段日子里的相处沉淀下来的,将会是一些刻满回忆和历史的沙粒,那里藏着的有心酸,也有欢愉,有包容,也有叹息。明天的明天,我们面临的将会有许许多多更陌生的人或物,所以不必祈求我们都能记住这份记忆,只希望在还没成为记忆时,好好珍惜。
相处,害怕沉默;相交,最忌无语。敞开你的胸怀,告诉我你想说的话,让我和你一起分担你的喜与悲。对我而言,我害怕一个人在陌生的角落里作梦,更害怕在充满回音的空洞中哭泣。
“终有一天,我们要远走高飞,为了各自的梦想,就像飘落的叶子走向不同的天涯。”这句话将会在某一天实现,但那又有什么所谓,我们曾是树上的叶子,风声吹响的是你我的过往。
爱情
爱情,对于我而言,仍然是一个很遥远的传说。也许这个传说将会绽放着异常美丽的光环,也许会饱含着心酸的泪水,也或许这个传说只是一个平平淡淡的风和影的故事,但这都将会是很久以后的事情。遥远到望断长空也无法极目的某个地方,遥远到望穿秋水也无法期待的某个春秋。也许是因为我手足无措,也许是我害怕而又期待的情愫的缘故,所以在我的心还没有被激起涟漪的现在,在我脑海还没有浮现浪漫晨昏的此刻,我依然固执地认为:这一切只是一个传说,一个不会向我走来却又要我主动靠近的传说。
有人曾说:“爱”和“死”是人生中解决不了的两大难题,人在青年时为爱所困惑,在老年时被死所困惑,一生都不得安宁;爱情像一把慢刀,一点一点地刺进人的肌肤,而死则是一把快刀,一下子就结束了所有的痛苦;我不害怕死亡,我却害怕爱情;我能够忍受决绝的快刀,却不能忍受延宕的慢刀。不管他说得对与否,我都相信:这世上没有永远都幸福或痛苦的时刻,自然也没有永远都甜蜜的罗曼史。纵然那些雪中送炭、百般呵护、花前月下的时候总是那么令人神往,但那心灵上的煎熬,那两处闲愁的相思,那害怕失去所拥有的担心,那决裂的心酸又会有多少人能够明白?那不能继续再爱或者不被爱的痛苦,并不是每一个人都能够承受的。我仍相信爱情,但我并不刻意追寻,只是静静地、静静地漂流,直到有一天,在阳光与海滩的岸边,让我的船静静地靠岸。
年少痴狂,多少情歌被唱得天翻地覆。但我依然记得有一句是:“我能想到最浪漫的事,就是和你一起慢慢变老。”也许,大千世界中,这才是真正的爱情,一份不掺杂质、不受污染的感情。但愿,当我的船靠岸的那一剎,当丘比特之箭射穿我心脏的时候,我依然相信这种绝尘的情缘。
也许由于我祈求的是一种完美人生,所以刀光剑影的小说我是不看的,但琼瑶的小说也看过不少,都是千篇一律。于是我总会说:“爱情也无非就是这样。”仿佛我是个过来人一样,所以总觉得自己好像很老。曾经有一个说法是:“没有经历爱情的人生是不完整的人生。”我追求完美,我却害怕破碎。所以,在情感方面我很吝啬,我的心跳也不会为了某个人而加速。就目前而言,心如止水地过着每一天不也很好吗? 起码不用担心风暴来临时,会将我的船儿吹翻。
“天涯流落思无穷,既相逢,又匆匆。”面对今朝明夕,回首往昔。在风雨兼程的路上,我能做的只是边走边收拾,收拾我生命中的每一个瞬间。
也许需要冷静冷静,也许需要一种更持久深沉的方式来寻找自己的心灵港湾。
沉静,做一个实在的人.......
灰度增强是一种在空域进行的图像增强方法。它是指将一定范围的像素(l,h)线性映射到一个新的范围(nl,nh)的操作。如果原来某个位置(x,y)的像素p(x,y)在(l,h)的范围内。那么,变换后的像素
f(p(x,y))=(p(x,y)-l)*(nh-nl)/(h-l);
使用gdi+对应的处理代码如下:
void EnhanceImage_Linear(Bitmap *bmp, int oldLow,int oldHigh, int newLow,int newHigh)
{
ASSERT(bmp!=NULL);
ASSERT(oldLow>=0
&&oldLow<=255);
ASSERT(oldHigh>=0
&&oldHigh<=255);
ASSERT(newLow>=0
&&newLow<=255);
ASSERT(newHigh>=0
&&newHigh<=255);
ASSERT(oldLow<oldHigh);
ASSERT(newLow<newHigh);
long width=bmp->GetWidth();
long height=bmp->GetHeight();
BitmapData bmpData;
bmp->LockBits(&Rect(0,0,width,height), ImageLockModeRead|ImageLockModeWrite,PixelFormat24bppRGB ,&bmpData);
unsigned char *pStart=(unsigned char *)(bmpData.Scan0);
REAL oldDiff=oldHigh-oldLow;
REAL newDiff=newHigh-newLow;
REAL ratio=newDiff/oldDiff;
for(int j=0;j<height;j++)
{
for(int i=0;i<width;i++)
{
pStart+=j*bmpData.Stride+3*i;
for(int k=0;k<3;k++)
{
if(pStart[k]>=oldLow
&&pStart[k]<=oldHigh)
{
int data=((pStart[k]-oldLow)*ratio);
if(data>255)
{
data=255;
}
pStart[k]=(unsigned char)data;
}
}
}
}
bmp->UnlockBits(&bmpData);
}
文章来源:
http://www.cppblog.com/dingding/archive/2008/12/14/69400.html
图像增强技术是将图像的部分信息按照一定的要求加以强化,使得其更适合于某种应用要求。比如,我们可能觉得图像的对比度太差,那么就可以将图像的频域中高频信息加以强化,使得图像的对比度更好;或者觉得图像太过锐利了,那么可以增强图像的低频部分使得图像得以平滑。
图像增强可以在频域或者空域进行。前者是只将图像的空间一定位置的像素值pixel(x,y)按照一定的要求映射到另一个像素值f(pixel(x,y),这里的f就是我们的变换函数。后者(频域增强)是指对图像进行傅立叶变换等变换而获取其像素变化的频率信息,然后按照一定的要求将这些频率信息处理以使之符合要求,然后将图像变换回空间像素阵列。
文章来源:
http://www.cppblog.com/dingding/archive/2008/12/14/69398.html
第一阶段
此阶段主要是能熟练地使用某种语言。这就相当于练武中的套路和架式这些表面的东西。
第二阶段
此阶段能精通基于某种平台的接口(例如我们现在常用的Win 32的API函数)以及所对应语言的自身的库函数。到达这个阶段后,也就相当于可以进行真实散打对练了,可以真正地在实践中做些应用。
第三阶段
此阶段能深入地了解某个平台系统的底层,已经具有了初级的内功的能力,也就是“手中有剑,心中无剑”。
第四阶级
此阶段能直接在平台上进行比较深层次的开发。基本上,能达到这个层次就可以说是进入了高层次。这时进入了高级内功的修炼。比如能进行VxD或操作系统的内核的修改。
这时已经不再有语言的束缚,语言只是一种工具,即使要用自己不会的语言进行开发,也只是简单地熟悉一下,就手到擒来,完全不像是第一阶段的时候学习语言的那种情况。一般来说,从第三阶段过渡到第四阶段是比较困难的。为什么会难呢?这就是因为很多人的思想变不过来。
第五阶级
此阶段就已经不再局限于简单的技术上的问题了,而是能从全局上把握和设计一个比较大的系统体系结构,从内核到外层界面。可以说是“手中无剑,心中有剑”。到了这个阶段以后,能对市面上的任何软件进行剖析,并能按自己的要求进行设计,就算是MS Word这样的大型软件,只要有充足的时间,也一定会设计出来。
第六阶级
此阶段也是最高的境界,达到“无招胜有招”。这时候,任何问题就纯粹变成了一个思路的问题,不是用什么代码就能表示的。也就是“手中无剑,心中也无剑”。
此时,对于练功的人来说,他已不用再去学什么少林拳,只是在旁看一下少林拳的对战,就能把此拳拿来就用。这就是真正的大师级的人物。这时,Win 32或Linux在你眼里是没有什么差别的。
每一个阶段再向上发展时都要按一定的方法。第一、第二个阶段通过自学就可以完成,只要多用心去研究,耐心地去学习。
要想从第二个阶段过渡到第三个阶段,就要有一个好的学习环境。例如有一个高手带领或公司里有一个好的练手环境。经过二、三年的积累就能达到第三个阶段。但是,有些人到达第三个阶段后,常常就很难有境界上的突破了。他们这时会产生一种观念,认为软件无非如此,认为自己已无所不能。其实,这时如果遇到大的或难些的软件,他们往往还是无从下手。
现在我们国家大部分程序员都是在第二、三级之间。他们大多都是通过自学成才的,不过这样的程序员一般在软件公司也能独当一面,完成一些软件的模块。
但是,也还有一
文章来源:
http://www.cppblog.com/dingding/archive/2008/10/27/65197.html