online stats

【Blog】Post Source Code on Blog

0 意見

要在Blog上貼上Source Code有幾個方法,
Formatting Source Code in your Blog這一篇是我看過內容相對完整的,
常見的四種方法都有介紹,有興趣可以參考一下;
接下來是我自己採用的方法,
Format My Source Code for BloggingAdvanced Syntax Highlighting搭配使用,
因為我喜歡Format My Source Code for Blogging簡潔的外框,
但又覺得它的內容太單調,
所以找了Advanced Syntax Highlighting搭配使用,
說穿了就是在既有
Advanced Syntax Highlighting
加入
Format My Source Code for Blogging的外框






read more...

【軟體分享】Google SketchUp

0 意見

Google SketchUp是強有力而且容易學習的3D軟體。
它運用數字化的設計素描與精簡的明確的工具,簡化你在電腦裡3D的設計。
有不少網友利用它來繪製裝潢設計圖(未來應該有機會用到),有興趣的朋友可以研究一下。

軟體名稱:Google SketchUp
軟體性質:免費軟體
作業系統:Windows XP/Vista & Mac OS X (10.4+)
語言介面:英文

中文化:SketchUp7_CHT.rar (10.70 MB)
中文化作者:八耆大蛇

相關網站:CADER設計論壇 > CAD/BIM 電腦輔助設計 > SketchUp





read more...

【DIY】浴室水龍頭更換

0 意見

分享一下網友DIY的經驗,有機會自己動手,可以省下不少開銷。



Mobile01 [居家修繕]浴室水龍頭更換

read more...

【程式語言】Split String

0 意見

【C++】

#include "stdafx.h"
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <conio.h>

char **funcSplit(char* iString, int* iCounter, char * iDelimiter)
{
    char TmpStr[255];
    char* TmpPointer;
    char** TmpStrList = 0;
    int TmpIdx = 0;
    int TmpNOE = 0;
   
    strcpy(TmpStr, iString);
    TmpPointer = strtok(TmpStr, iDelimiter);
    while (TmpPointer != 0 ) {
        TmpStrList = (char**) realloc(TmpStrList, (TmpIdx + 1) * sizeof(char*));
        TmpStrList[TmpIdx] = (char*) malloc((strlen(TmpPointer) + 1));
        strcpy(TmpStrList[TmpIdx], TmpPointer);
        ++TmpIdx;
        TmpPointer = strtok(NULL, iDelimiter);
    }
    *iCounter = TmpIdx;
    return TmpStrList;
}

// Example
int _tmain(int argc, _TCHAR* argv[])
{
//    char TmpStr[255] = "one, two, tree, four,five  six;seven;eight, nine";
    char *TmpStr = "one, two, tree, four,five  six;seven;eight, nine";
    int TmpCounter = 0;
    int TmpIdx = 0;

    char ** TmpStrList = funcSplit( TmpStr, &TmpCounter, " ,;");
    for (TmpIdx = 0; TmpIdx < TmpCounter; ++TmpIdx)
       printf("%s\n", TmpStrList[TmpIdx]);

    for (TmpIdx = 0; TmpIdx < TmpCounter; ++TmpIdx)
       free(TmpStrList[TmpIdx]);

    free(TmpStrList);
    getch();
    return 0;
}



【Delphi】

function funcSplitStr(iSpliter: String; iSourceStr: String): TStrings;
var
    TmpPos: Integer;
    TmpStrList: TStringList;
    TmpStr: String;
begin
    TmpStrList := TStringList.Create;
    TmpPos := pos(iSpliter, iSourceStr);
   
    while (TmpPos > 0) do
    begin
        TmpStr := copy(iSourceStr, 1, (TmpPos - 1));
        TmpStrList.Add(TmpStr);
        iSourceStr := copy (iSourceStr , (TmpPos + Length(iSpliter)), (Length(iSourceStr) - TmpPos - Length(iSpliter) + 1));
        TmpPos := pos(iSpliter, iSourceStr);
    end ;
    TmpStrList.Add(iSourceStr);
   
    Result := TmpStrList;
end;



read more...