您的位置:首页 > 运维架构

fatal error C1083: Cannot open include file: 'stdlib': No such file or directory

2009-11-24 11:27 603 查看
想从新学C++,于是把那本<<C++大学教程>>从头来看。



运行第5章的洗牌例子,编译出了几个异常,如题,还有time.h这个头文件。



fatal error C1083: Cannot open include file: 'stdlib': No such file or directory



原来在C++里面要把stdlib改成cstdlib, time改成ctime。



结果在使用setW()方法的时候,又异常。原来要这样:std::setw(int);w要小写了。



把编译通过的源程序记录下来吧,方便以后回头看:



#include<iostream>
#include<iomanip>
#include<cstdlib>
#include<ctime>

using namespace std;

void shuffle(int [][13]);

void deal(const int [][13],const char *[],const char *[]);

int main(){
const char *suit[4] = {"Hearts","Diamonds","Clubs","Spades"};
const char *face[13] = {"Ace","Deuce","Three","Four","Five","Six","Seven","Eight","Nine","Ten","Jack","Queen","King"};

int deck[4][13] = {0};

srand(time(0));
shuffle(deck);
deal(deck,face,suit);
return 0;
}

void shuffle(int wDeck[][13]){
int row,column;
for(int card = 1;card <= 52;card ++){
do{
row = rand() % 4;
column = rand() % 13;
}while(wDeck[row][column] != 0);
wDeck[row][column] = card;
}
}

void deal(const int wDeck[][13],const char *wFace[],const char *wSuit[]){
for(int card = 1;card <= 52;card ++){
for(int row = 0;row <= 3;row ++){
for(int column = 0;column <= 12;column ++){
if(wDeck[row][column] == card){
cout << std::setw(5) << setiosflags(ios::right)
<< wFace[column] << " of "
<< setw(8) << setiosflags(ios::left)
<< wSuit[row]
<< (card % 2 == 0 ? '/n':'/t');
}
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐