C語言軟體版本號組成和定義

2021-10-03 02:07:41 字數 1283 閱讀 6371

軟體版本號規範

一、軟體版本號由四部分組成:

1、 主版本號 - x

2 、子版本號 - y

3、 階段版本號 - z

4、日期版本號加希臘字母版本號(可選)

常用的希臘字母版本號:alpha、beta、rc、release。

舉例:1.0.1.190628_beta

二、規則

重大變更公升級,x需遞增

增加新功能,y需遞增

修復bug,z需遞增

0.y.z 的版本號表明軟體處於初始開發階段,意味著 api 可能不穩定;1.0.0 表明版本已有穩定的 api。

注意:版本一經發布,不得修改其內容,任何修改必須在新版本發布

軟體版本號巨集定義的高階技巧

在編寫程式的時候,經常會用到version,用來表示程式的版本號

有的時候我們還希望裡面加個日期,例如: "system v2.0.1.2017.9.13"

又有的時候我們只想讀出數字版本號,例如2, 0, 1,有的時候又想如果想將裡面的2, 0, 1這3 個數字提取出來,該怎麼做呢?

通常做法是這樣的:

#define mainver 2

#define subver1 0

#define subver2 1

#define verstr "system v2.0.1.2017.9.13"

如果想修改下版本號,即需要修改前面3 個數字巨集,又要修改後面的字串巨集,最後還得將日期寫上;

那有沒有什麼辦法將工作量減小到最少,只要更改前面3 個巨集就可以了呢?

答案當然是可以的了,請看:

#define mainver 2

#define subver1 0

#define subver2 1

#define str(s)     #s 

#define version(a,b,c)  "system v" str(a) "." str(b) "." str(c) " "__date__

//#define verstr  "system v2.0.1.2017.9.13"

void main()

說明: 這個日期是當前檔案被編譯的生成日期,如果您沒有修改這個檔案,那日期是不會變的,我想您修改了**也一定

不會忘記修改下版本號,所以這個日期字串肯定是當前的日期;還有一點,這個日期的格式我目前找不到自定義的辦法

C 軟體版本號對比

在軟體更新時,需要根據版本號來決定是否需要自動更新,所以就涉及到版本號的對比了。下面給出的是使用string的compare函式進行版本號判斷的 include stdafx.h include include using namespace std vectorsplit wstring wstr...

軟體版本號規範

1.軟體版本階段說明 obase 版 此版本表示該軟體僅僅是乙個假頁面鏈結,通常包括所有的功能和頁面布局,但是頁面中的功能都沒有做完整的實現,只是做為整體 的乙個基礎架構。o alpha 版 此版本表示該軟體在此階段主要是以實現軟體功能為主,通常只在軟體開發者內部交流,一般而言,該版本軟體的bug較...

軟體版本號規範

1.軟體版本階段說明 obase 版 此版本表示該軟體僅僅是乙個假頁面鏈結,通常包括所有的功能和頁面布局,但是頁面中的功能都沒有做完整的實現,只是做為整體 的乙個基礎架構。o alpha 版 此版本表示該軟體在此階段主要是以實現軟體功能為主,通常只在軟體開發者內部交流,一般而言,該版本軟體的bug較...