日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

VC6生成随机浮点数、C++11的random头文件以及Dev C++支持C++11

發布時間:2025/4/14 c/c++ 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC6生成随机浮点数、C++11的random头文件以及Dev C++支持C++11 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

生成隨機數;
c語言是用 stdlib.h 里面的 rand()函數;
c++是 在 #include 里面的 std::random_device 類,該類重載了函數符號();根據資料random是C++ 11的;
做一個程序,代碼如下;

#include "stdafx.h" #include <iostream> #include <random>inline float get_random_float() {std::random_device dev;std::mt19937 rng(dev());std::uniform_real_distribution<float> dist(0.f, 1.f);return dist(rng); }int main() {int m = 0;while(m<10){float random_r = get_random_float();std::cout<<random_r<<std::endl;m++;}system("pause");return 0; } Win7, VC6;構建;出現下圖錯誤;


沒有random頭文件;VC6不支持C++11;
重新做一個程序;代碼如下;

#include "stdafx.h" #include <iostream>inline float get_random_float() {//int a = rand();//return (float)(rand()%100 + 100 )/100.0f; //2位小數return (float)(rand()%10 + 10 )/10.0f; //1位小數 }int main() {int m = 0;while(m<10){float random_r = get_random_float();std::cout<<random_r<<std::endl;m++;}system("pause");return 0; }

不同小數點輸出如下;


把第一個程序移到CFree 5;構建;出錯;CFree 5 也不支持C++11;

看一下CFree的版本情況;

最新版本的Dev C++支持C++11;安裝一個;然后拷貝它的random和random.h文件到CFree 5 的系統目錄;
然后再構建;包含時,出錯,random文件內容和出錯如下;它里面又包含其它頭文件;

包含<random.h>時,出錯和random.h文件內容如下;它里面又有其它一些定義;

光拷貝單獨文件過來不行;還是要整個支持C++11;
看下CFree 5 的系統目錄;如下目錄是Windows的頭文件;

如下目錄是對C++的支持;這是比較早一些的版本;

Dev C++的如下目錄是對C++11的支持;

下面用Dev C++ 最新版來編譯前面的程序;先構建一下,前面第一個程序,還是找不到 random.h;

進入如下菜單;

添加 -std=c++11 一行;這樣Dev C++才支持C++11;

然后再構建,程序通過了;但是數字沒有隨機;因為random本身是linux下的;

總結

以上是生活随笔為你收集整理的VC6生成随机浮点数、C++11的random头文件以及Dev C++支持C++11的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。