需要實現乙個比較本機和伺服器的安裝包的版本新舊方法,參考
但這個程式實現不了如
1.x.x 和 2.x.x
1.1.4 和 1.1.4.1
這種情況下的比較,做了些修改
/**
* @brief 版本號比較那個更新
* @param pszstr1 待比較的版本號
* @param pszstr2 待比較的版本號
* @retval >0:pszstr1更新
=0:相同
<0:pszstr2更新
例: "2.0.10.6" 與 "2.0.3.9"相比較的返回結果為7
"2.0.3.9" 與 "2.0.10.6"相比較的返回結果為-7
**/static
intedition_compare
(const
char
* pszstr1,
const
char
* pszstr2)
int ncurpos =0-
1;const
char
* psztmp1 = pszstr1;
const
char
* psztmp2 = pszstr2;
while((
*psztmp1 !=
'\0')&&
(*psztmp2 !=
'\0')&&
(*psztmp1 ==
*psztmp2))}
if(*psztmp1 ==
'\0'
&&*psztmp2 ==
'\0'
)elseif(
*psztmp1 ==
'\0'
)elseif(
*psztmp2 ==
'\0'
)else
}
比較版本號
題目 比較兩個版本號 version1 和 version2。如果 version1 version2 返回 1,如果 version1 version2 返回 1,除此之外返回 0。你可以假設版本字串非空,並且只包含數字和 字元。字元不代表小數點,而是用於分隔數字序列。例如,2.5 不是 兩個半 ...
比較版本號
比較兩個版本號 version1 和 version2。如果 version1 version2 返回 1,如果 version1 version2 返回 1,除此之外返回 0。你可以假設版本字串非空,並且只包含數字和 字元。字元不代表小數點,而是用於分隔數字序列。例如,2.5 不是 兩個半 也不是...
比較版本號
比較版本號 比較兩個版本號 version1 和 version2。如果 version1 version2 返回1,如果 version1 version2 返回 1,除此之外返回0。你可以假設版本字串非空,並且只包含數字和.字元。字元不代表小數點,而是用於分隔數字序列。例如,2.5不是 兩個半 ...