成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

對C++庫函數進行學習探索總結筆記

開發 后端
通過C++庫函數rand()產生的數,說的好聽點是“偽隨機數”,其實根本不是隨機數,更為豐富多彩的登錄和個性化服務以及更好的數據訪問和同步。

C++庫函數作為一個高效的.NET程序語言。其混合了函數語言和物件導向程序編制語言,并且***的適用于編程、算法、技術和探索性開發,因此可以在使用的過程當中感受到趣味性和吸引力。

rand()產生“偽隨機數”的原理是:給定數x(如果調用者未指定,則使用默認值),通過固定的計算公式1返回一個數y,這個數y就是所謂的偽隨機數;同時通過固定的計算公式2,修改x,這樣下次調用rand()時就會得到一個新的y。通過上面這兩步,反復調用rand()會得到一個所謂的“偽隨機數”的序列。

因為兩個計算公式是固定的,所以只要X1相同,那么產生的序列就相同。X1成為種子,seed。
如果調用者不指定種子,C++語言的rand()會使用默認值。設置種子使用srand(unsigned int)函數,這個函數的名字的***個字母s就是seed的意思。

因為時間的唯一性和一維性,所以可以用系統時間來作為種子。這樣可以保證每次運行時,rand()產生的序列都是不同的。在使用rand()前,以如下方式設置種子即可,
srand((unsigned int) time(0));

下面是《C Programming Language》中給出的rand()和srand()的一種實現,可能是早期C++的庫函數的實現。

  1. int rand(void) {  
  2.   nextnext = next * 1103515245 + 12345;  //修改next的值  
  3.   return (unsigned int) (next/65536) % 32768;  //得到偽隨機數在0~32768之間  
  4. }  
  5.  
  6. void srand(unsigned int seed) {  
  7.   next = seed;   //設置種子  

也就是說,隨便你拿起哪本C++書籍(包括很多被人們廣泛稱為“必讀經典”的),那么有很大的可能這本書中的內容不是你應該學的,而是你不應該學的。我之所以這么說有兩個原因,因為一,我曾經是受害者。二,也是更實質性的原因,這些所謂的必讀經典。

充斥的是介紹C++中的陷阱和對于C++庫函數的缺陷的各種workarounds(好聽一點叫Idioms(慣用法)或techniques(技術));又因為C++中的這類陷阱和缺陷實在數不勝數,所以就拉出了一個“長尾”;這類書籍在所有語言中都存在(“C缺陷和陷阱”、“Effective Java”、“Effective C#”等等)。#t#

然而在C++庫函數里面這個尾巴特別長,導致這類書數不勝數。三,這些書中列出來的缺陷和陷阱根本不區分常見程度,對于一個用本程序員來說,應該希望看到“從最常見的問題到最不常見的問題”這樣的順序來羅列內容,然而這些書里面要么全部混在一起。

要么按照“資源管理、類設計、泛型”這樣的技術分類來介紹內容,這根本毫無幫助(如果我看到一個章節的內容,我當然知道它講的是類設計還是資源管理,還用廢話么?),使得一個學習者無法辨別并將最重要的時間花在最常見的問題之上。

責任編輯:chenqingxiang 來源: qqread
相關推薦

2010-01-14 17:02:10

學習C++

2010-01-20 17:48:07

C++ 函數重載

2010-01-26 17:53:05

C++入門學習

2010-01-15 14:59:54

C++標準程序庫

2010-01-22 15:53:55

C++轉換

2009-08-13 18:21:52

C#學習筆記

2010-01-13 14:35:10

Visual C++

2010-01-13 18:47:53

C++教程

2010-01-28 14:04:35

C++鏈表

2010-01-18 10:53:26

2010-01-21 18:00:59

C++語言

2011-04-19 17:36:12

C++

2011-04-19 17:44:02

C++

2010-01-25 14:31:07

C++類

2022-08-05 13:38:08

C語言庫函數printf()

2010-01-11 14:05:01

C++學習方法

2010-01-22 11:13:16

C++靜態

2010-01-15 17:18:57

C++源程序

2010-01-27 16:52:31

C++語言學習

2022-12-16 15:20:19

RustC 語言
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 三级免费毛片 | 婷婷桃色网 | 欧美九九九 | 日韩精品免费一区二区在线观看 | 天堂中文在线观看 | 欧美日韩一区二区三区四区五区 | 欧美精品一区三区 | 国产精品国产三级国产aⅴ原创 | 国产一区二区久久久 | 色婷婷一区 | 亚洲在线一区二区三区 | 日日摸日日碰夜夜爽亚洲精品蜜乳 | 欧美日韩久久 | 国产精品久久一区二区三区 | 日韩视频―中文字幕 | 成人综合一区 | 国产精品久久久久久久久久不蜜臀 | 久久精品国产一区二区电影 | www.亚洲精品| 亚洲一区二区三区观看 | 日韩精品| 宅男伊人 | 337p日本欧洲亚洲大胆 | 亚洲国产精品久久久久久 | 黄色成人在线观看 | 国产精品高清在线 | 日韩精品在线视频免费观看 | 久久久噜噜噜久久中文字幕色伊伊 | 亚洲国产精品99久久久久久久久 | 亚洲资源在线 | 国产精品国产a级 | 国产成人综合网 | 91久久久久久久久久久久久 | 亚洲午夜视频 | 亚洲成人中文字幕 | 免费国产视频 | 成人免费视频在线观看 | 日韩亚洲一区二区 | 国产精品不卡一区 | 亚洲精品3 | 国产精品1区2区3区 男女啪啪高潮无遮挡免费动态 |