進(jìn)程間通信知識了解不少,今天第一次正式使用,就出問題了。
看看共享內(nèi)存的原理,操作系統(tǒng)把一塊公共的內(nèi)存區(qū)域,映射到進(jìn)程內(nèi)存空間中,但映射的內(nèi)存地址并不能保證映射后的地址一致性(其實(shí)一致的可能性很小,基本沒有成功過),而此處array執(zhí)行的地址為創(chuàng)建共享內(nèi)存進(jìn)程中正確的數(shù)組地址,在新的進(jìn)程中就不對了。
因此在共享內(nèi)存中,需要慎重使用指針變量。對于本文中的問題修改很簡單,刪除int *array,每次使用結(jié)構(gòu)的地址跳過這些額外信息即可,可通過下面的宏函數(shù)得到數(shù)據(jù)域的指針。

文章來源:
http://blog.csdn.net/volant_hoo/archive/2009/05/11/4169093.aspx
最近看CSDN,又談到一道面試題,大致是“不使用比較運(yùn)算符和庫函數(shù)比較兩個(gè)整數(shù)的大小”。這種題看似簡單,實(shí)則深藏玄機(jī),考得不只是技巧還有很多基礎(chǔ)知識。

文章來源:
http://blog.csdn.net/volant_hoo/archive/2009/05/11/4169108.aspx
奧運(yùn)會(huì)結(jié)束了,工作也要開始忙起來了。從開幕到閉幕,看了兩個(gè)星期的比賽,有高興,有驚喜,有震撼,也有失望。現(xiàn)在被比賽牽動(dòng)的心,又得趨于平淡。回歸現(xiàn)實(shí),還是工作的勞累和生活的奔波。
前天查了系分考試的成績,論文沒有過。成績在意料之間,一篇字?jǐn)?shù)剛好、內(nèi)容跑題的論文,又怎么能過呢。失敗也是經(jīng)驗(yàn),感覺以下幾點(diǎn):
1、系分沒有想象中那么難考。好好準(zhǔn)備一下,爭取基礎(chǔ)知識和案例成績再提高一些。
2、自己的文字組織能力有待提高。很長時(shí)間沒有動(dòng)筆寫字了,兩個(gè)小時(shí)完成2000-3000字的論文和300-500的摘要,是個(gè)不小的挑戰(zhàn)。考試的時(shí)候,不敢多做思考,就一直寫呀寫的,結(jié)束前一分鐘剛好碼字到2000字那一行,慚愧啊!
3、寫論文要學(xué)會(huì)說廢話。一直以來,自己都崇尚以“簡”為美,經(jīng)常對外文書籍中動(dòng)輒“洋洋大論”的行為嗤之以鼻,直到考試的時(shí)候,才發(fā)現(xiàn)說廢話也是一種好習(xí)慣。
4、把規(guī)劃細(xì)化也是一種好的方式。長期以來,養(yǎng)成的習(xí)慣都是先寫好主干內(nèi)容,然后再逐步擴(kuò)充,呵呵,像XP一樣,錯(cuò)了可以改,少了可以加。唉,電子版可以如此,紙質(zhì)版又能如何,羨慕機(jī)試了。
5、需要一塊手表。考場上沒有鐘,手機(jī)不能用,有時(shí)間規(guī)劃也不能落到實(shí)處。
換了工作,又換了房子,需要時(shí)間去適應(yīng)新的環(huán)境。下半年的系分不打算考了,來年再度奮戰(zhàn)。阿門,祈禱一下,希望能夠順利通過。
google開源了c++單元測試框架,真讓人興奮。安裝的過程比較簡單,在eclipse+mingw+cygwin下很easy就搞定了。使用也很容易,按照sample不用看文檔也能很快上手。過程就不多少了,記點(diǎn)東西備忘。
斷言:
ASSERT_TRUE(condition); EXPECT_TRUE(condition); condition為真
ASSERT_FALSE(condition); EXPECT_FALSE(condition); condition為假
ASSERT_EQ(expected, actual); EXPECT_EQ(expected, actual); expected == actual
ASSERT_NE(val1, val2); EXPECT_NE(val1, val2); val1 != val2
ASSERT_LT(val1, val2); EXPECT_LT(val1, val2); val1 < val2
ASSERT_LE(val1, val2); EXPECT_LE(val1, val2); val1 <= val2
ASSERT_GT(val1, val2); EXPECT_GT(val1, val2); val1 > val2
ASSERT_GE(val1, val2); EXPECT_GE(val1, val2); val1 >= val2
ASSERT_STREQ(expected_str, actual_str); EXPECT_STREQ(expected_str, actual_str); 兩個(gè)C字符串有相同的內(nèi)容
ASSERT_STRNE(str1, str2); EXPECT_STRNE(str1, str2); 兩個(gè)C字符串有不同的內(nèi)容
ASSERT_STRCASEEQ(expected_str, actual_str); EXPECT_STRCASEEQ(expected_str, actual_str); 兩個(gè)C字符串有相同的內(nèi)容,忽略大小寫
ASSERT_STRCASENE(str1, str2); EXPECT_STRCASENE(str1, str2); 兩個(gè)C字符串有不同的內(nèi)容,忽略大小寫
頭文件:
#include <gtest/gtest.h>
main:
testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
庫:
-lgtest
eclipse的出現(xiàn)和每一次版本升級,都讓人興奮,趕緊把公司和家里都升了上去。試用了兩天,總體感覺還是不錯(cuò)的。

文章來源:
http://blog.csdn.net/volant_hoo/archive/2008/07/17/2668471.aspx
很久沒有接觸snort了,由于工作的原因,和它打了兩年多的交道,雖然有不少的認(rèn)識,但缺少深入的研究。閑來時(shí)翻的幾篇手冊,原來放在163上,偷懶放個(gè)總的上來。

文章來源:
http://blog.csdn.net/volant_hoo/archive/2008/07/07/2622733.aspx
做了幾年C/C++開發(fā),一直想要把單元測試加上,因?yàn)楣ぷ靼才牛隽艘恍《螘r(shí)間的java,更堅(jiān)定了搭建c++單元測試環(huán)境的想法,但不得不說cppunit的配置實(shí)在是有些繁瑣,MinGW的安裝還好說,cygwin安裝實(shí)在是太慢,可憐的網(wǎng)速讓我數(shù)次終止了它的安裝,幸運(yùn)的是在公司的電腦上居然發(fā)現(xiàn)了cygwin的安裝包,于是就開始了我的cppunit的測試旅程。

文章來源:
http://blog.csdn.net/volant_hoo/archive/2008/06/02/2502339.aspx