c語言隨機生成字串 C語言快速入門 字串生成

2021-10-11 07:12:01 字數 1193 閱讀 4978

假設我們現在正在開發一款文件管理類軟體。其中一項功能就是一次性建立多個名稱連續的資料夾,如icon1、 icon2等等。整個名稱可以分作兩部分,前半部分是常量字串"icon",後半部分是編號字串。在使用迴圈語句生成名稱時,編號是數字,如果能將編號轉換為乙個字串,那麼我們就可以用strcat函式將兩部分組合起來,然後使用mkdir建立資料夾即可。因此,現階段問題就變成了如何把數字轉換為對應的字元。

現在又到了檢視ascii碼表的時候了,通過查表我們可以看到,字元'0',對應的ascii碼是48,也就是說數值48,轉換為char型別就是字元'0',根據這個簡單的對應關係,我們就可以生成名稱了。

我們輸出編號從0-9的名稱,整體效果還不錯。不過,我想你也看到侷限性了,如果要生成編號大於10的名稱,這個程式就像小孩數指頭做算術一樣,不夠用了。

在這一文明階段的,我們的思考認知能力有了巨大的提公升,我們希望能根據指定的乙個區間生成對應的名稱,如icon17到icon35,同時還希望前導名稱能夠指定,就像是name999-name1234一樣。同樣,最關鍵的問題還是數值到字串的轉換,因為現在的數值範圍更大了,需要的處理也就更多了。讓我們嘗試編寫乙個函式去解決這個問題。

現在我們進化到了三階文明,在這一階段,我們不再需要自己編寫複雜的數值轉換字串函式了。而是使用本階文明提供的函式來完明,這個函式就是itoa,它由stdlib.h提供。

原型名:char*itoa( int value, char *string, int radix );

value是被轉換的整數,string是轉換後儲存的字元陣列,radix是轉換進製數,如2,8,10,16進製制。

想想看,如果我們僅僅是要輸出符合要求的名稱,那麼使用 printf("icon%d

C 生成隨機字串

這個需求也是最近乙個專案裡的實際需求。測試乙個資料庫相關的 要往資料庫裡隨機的填寫一些字段。從原理上是很容易實現。建立乙個陣列,存放一些字元。然後隨機的從裡面取一些字元湊成乙個字串。所以這個 沒啥可說的。裡面用到了 std random device,std mt19937 std uniform ...

C 生成隨機字串

生成隨機字串 目標字串的長度 是否包含數字,1 包含,預設為包含 是否包含小寫字母,1 包含,預設為包含 是否包含大寫字母,1 包含,預設為包含 是否包含特殊字元,1 包含,預設為不包含 要包含的自定義字元,直接輸入要包含的字元列表 指定長度的隨機字串 public static string ge...

C 生成隨機字串

1.是 的,此處記錄一下。生成隨機字串 目標字串的長度 是否包含數字,1 包含,預設為包含 是否包含小寫字母,1 包含,預設為包含 是否包含大寫字母,1 包含,預設為包含 是否包含特殊字元,1 包含,預設為不包含 要包含的自定義字元,直接輸入要包含的字元列表 指定長度的隨機字串 public sta...