2008年11月26日

C-字串轉整數

如何使用C語言將字串的數字改成整數呢?



相信這是許多人的困擾,包括自己也是ˇˇ



以前侯老大教過ˊˋ~差點還給他了ˇˇ~~



其實很簡單,ASCLL碼中的數字0->所代表的10進位為48



0->48

1->49

2->50

...以此類推

所用的技巧其實很簡單(謎:我想到快吐血了XD)



X=S-48



將字串的ASCLL-48則得到數字的值



下面是範例

#include

#include



main()

{

char a[10];

int i,b[10];



scanf("%s",a);



for(i=0;i<10;i++)

{

b[i]=a[i]-48;

printf("\n%d",b[i]);

}



}



希望能幫到需要低人ˇˇ

[C#] - 日期計算的問題--PartI 計算兩日期的相差天數

日期計算看似不難,但是算起來要人命= =...



要考慮到年是否有閏年,月是否大小月,二月是否有29天,日期30或31天

光這些判斷式,寫完都睡著了@@

以下是在網路上查到的方式,用C#來寫

他的公式如下:

                 N=1461 * f(年, 月) ÷ 4 + 153 * g(月) ÷ 5 +日

                 其中:

                            f(年, 月) = 年-1 如果月<=2

                                           =年 其他情況

                                 g(月) =月+13 如果月<=2

                                           =月+1 其他情況

                                           (對於1900/3/1以後上式都成立)

看完這個公式還不太瞭解的話,請往下再看

===========================================================================



//checksum=20081022125525(年月日時分秒)
public string cal(int checksum)
{

int temp;
int day1 = checksum % 100;
temp = checksum / 100;
int month1 = temp % 100;
int year1 = temp / 100;
//以上是將checksum的日期分離出來
DateTime dt = DateTime.Now;
int day2 = dt.Day;
int month2 = dt.Month;
int year2 = dt.Year;
//以上是取得當下系統時間
if (month1 <= 2)
{
year1 = year1 - 1;
month1 = month1 + 13;
}
else
{
month1 = month1 + 1;
}
if (month2 <= 2)
{
year2 = year2 - 1;
month2 = month2 + 13;
}
else
{
month2 = month2 + 1;
}
//以上為年月的判斷式,為了實現下面的公式的前置工作

int N1 = 1461 * year1 / 4 + 153 * month1 / 5 + day1;
int N2 = 1461 * year2 / 4 + 153 * month2 / 5 + day2;
int daycount = N2 - N1;
//daycount就是相差的天數哩!!
return daycount.ToString();
}

=========================================================================

[C#] - datagrid排序

下列有2個方法可以進行排序,2個方法支援的套件不一樣



方法一:



參考http://msdn.microsoft.com/zh-tw/library/system.data.dataview.sort(VS.80).aspx



DataView dv = ds.Tables[0].DefaultView;
//設定顯示資料表的順序
dv.Sort = "建立日期 DESC";
//建立日期<--此為欄位名稱,也就是說要以這個欄位來排序
// "ASC" (遞增) 或 "DESC" (遞減)



版本支援:

.NET Framework

支援版本:2.0、1.1、1.0

.NET Compact Framework

支援版本:2.0、1.0



===========================================================================

方法二:



DataGridViewColumn newColumn = new DataGridViewColumn();
newColumn = dgvBloodPressure.Columns[5];
//建立要排序的欄位,5代表欄位序號,第一個欄位為0
dgvBloodPressure.Sort(newColumn, ListSortDirection.Descending);
//dgvBloodPressure<--此為datagrid物件
//遞減


版本支援:

.NET Framework

支援版本:2.0

2008年11月19日

哪套防毒軟體最好???

 


從我懂電腦開始


使用第一套防毒軟體開始


從中第一個病毒開始


從開始看很多防毒資安的網路資源開始


最常看到的一句詢問的話語:哪套防毒軟體好??哪個最強???



而初學的我跟一般人一樣,總是興高采烈的議論紛紛,到底哪個好???



開始看web上的文章開始



查了許多介紹文



看了很多論壇的言論



每個人使用的觀點



自己實際使用的感想,對於哪套好



已經心裡有屬....



討論時,就是唇槍舌戰就像百家爭鳴似的死命為某個防毒軟體背書



而現階段,對我來說,防毒軟體只是附屬品,常常可以看到網路上許多人說他不用防毒軟體的??



絕大部分的人聽到就是驚訝的說:怎麼可能!!



個人認為,這是可以的,無論哪套防毒軟體



都不可能100%的防範病毒



卻總是有人鑽牛角尖的問說:到底哪套好



這似乎有點逼供的感覺



回:有良好的習慣,可以不用.



發問者有狠狠的駁斥,又一定要問出哪套好.....



個人有許多不解,既然已有想法為何還要死命的問哪套好.....



真矛盾,



以上並非抱怨,而是希望導正觀念



沒有最好的防毒軟體,只有最好的使用習慣



=================================================

看完該文,請不要在問什麼防毒軟體最好,世上沒有最好的防毒軟體!!



=================================================



08/11/19

2008年11月7日

[C#] - 日期計算之今天的7天前

Convert.ToDateTime(DateTime.Today.AddDays(-(int)DateTime.Today.DayOfWeek - 7) + (DateTime.Today.Date - DateTime.Today.AddDays(-(int)DateTime.Today.DayOfWeek - 7)) - (DateTime.Today.AddDays(-(int)DateTime.Today.DayOfWeek) - DateTime.Today.AddDays(-(int)DateTime.Today.DayOfWeek - 7))).ToString("yyyyMMdd")


//此為今天的一個星期前的日期



EX:今天:2008/11/07

一個星期前:2008/10/31



為了搞這個想真久= =....

2008年11月4日

最後衝刺之PHR-mobile端完成

就在今日!!



完成了PHR-mobile端的建置(v1.0.2)



經過了快一年的時間!!終於搞定了@@



現在僅剩PHR-PC端還在奮鬥中!!



版本(v1.0.1.3)<--隨時變動



距離完成不遠了!!



但並非最完美~~~~!!



礙於時間只好忍痛截短進度.....



mobile端其實早就好了!!只是一直有小BUG沒注意到&排版一直做不好



就拖了好久!!



還有一些沒辦法突破的技術問題ˊˋ...



真糟= =|||



只好用另一種方法規避= =....



努力的做最後衝刺!!



下次補各PC端好了@@....(PC端不是我負責的XD...)