在VS2012输入#include <iostream.h>报错

在VS2012中使用#include就会报错,提示无法打开包括文件:“iostream.h”,但是用#include using namespace std;就没问题,想问问两者的区别。还有命名空间名有哪些

1个回答

 #include <iostream>
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复chanvcvcvc: .h是不符合c++规范的,vc++ 6兼容这个,但是现在的版本不支持。现在的iostream只能通过std命名空间访问,微软删除了系统库函数下的.h
2 年多之前 回复
caozhy
贵阳老马马善福专业维修游泳池堵漏防水工程 回复chanvcvcvc: 对,是要using namespace std;,你原来不是有么。
2 年多之前 回复
qq_21089415
chanvcvcvc #include<iostream>还不行,要加上using namespace std才可以,我想知道这两种方法有什么区别吗
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
关于C++的问题,要请教各位 ,本人初学。
使用C++的输入(cin)输出时(cout),必须在程序开头加#include <iostream.h> 但是加上后面的.h程序会报错,我去掉.h后不报错,请问这是什么原因,<iostream.h> 不是C++的标准库吗?
C语言输入语句报错,参数0000000003
这是我敲的代码 ``` #include<iostream> #include<stdio.h> #include<string.h> using namespace std; int main(){ int a = 2; string c; string b = "s"; printf("%d\n",a); printf("%s\n",b.c_str()); char bArray[512] = { 0}; scanf_s("%s", bArray); printf("bArray is %s\n",bArray); system("pause"); } ``` 运行后这个样子 ![图片说明](https://img-ask.csdn.net/upload/201909/22/1569157077_945479.png) 输入一个数,回车后,这个样子 ![图片说明](https://img-ask.csdn.net/upload/201909/22/1569157099_996926.png) 求解
vc++6.0引用list报错,list.h文件中缺少分号,为什么?
//Tree.h #include<list.h> #include<iostream.h> template<class T> class Tree{ T*NA; list<int>*HL; int root; int sizeN,sizeC; int maxN; public: Tree(int n = 100):root(-1), sizeN(0), sizeC(0), maxN(n){ NA = new T[n]; HL = new list<int>[n]; } ~Tree(){ delete[]NA; delete[]HL; } int Empty()const{ return size == 0; } int Full()const{ return size == maxN; } int SizeN()const{ return sizeN; } int SizeC()const{ return sizeC; } int FindNode(const T&node)const; bool FindNode(const T&node, int pos)const; bool InsertN(const T&node); bool InsertC(const T&parent, const T&child); void readTree(const char*filename); void writeTree(const char*filename); template<class T> friend ostream&operator<<(ostream& ostr, const Tree<T>&t); template<class T> friend istream&operator>>(istream& istr, Tree<T>&t); }; template<class T> int Tree<T>::FindNode(const T&node)const{ for (int i = 0; i < sizeN; i++) if (NA[i] == node) return(i); return -1; } template<class T> bool Tree<T>::FindNode(const T&node, int pos)const{ if (pos < 0 || pos >= sizeN) return 0; node = NA[pos]; return 1; } template<class T> bool Tree<T>::InsertN(const T&node){ if (sizeN == maxN) return 0; NA[sizeN] = node; sizeN++; return 1; } template<class T> bool Tree<T>::InsertC(const T&parent, const T&child){ int pi = FindNode(parent), cj = FindNode(child); if (pi == -1 || cj == -1 || pi == cj) return 0; HL[pi].insert(HL[pi].end(), cj); sizeC++; return 1; } template<class T> istream& operator>>(istream& istr,Tree<T>& t){ char str[50]; int n; T parent,child; istr >> str >> n; istr >> str >> parent; t.InsertN(parent); t.root = t.sizeN - 1; istr >> str; for (int i = 1; i <= n - 1; ++i){ istr >> child; t.InsertN(child); } istr >> str >> n; for (int j = 1; j <= n; ++j){ istr >> parent >> child; t.InsertC(parent, child); } return istr; } template<class T> ostream&operator<<(ostream& ostr,const Tree<T>& t){ for (int i = 0; i < t.sizeN; i++){ ostr << i << '-' << t.NA[i] << ':'; list<int>::iterator first = t.HL[i].begin(), last = t.HL[i].end(); for (; first != last; ++first) ostr << '(' << *first << ')' << ' '; ostr << endl; } return (ostr); } //main函数 #include<iostream.h> #include<fstream.h> #include<string.h> #include"Tree.h" int main(){ Tree<char>T(20); int c; cin >> c; switch (c){ case 1:{ cout << "从磁盘提取,输出至文件" << endl; ifstream fin; fin.open("treein.txt", ios::in); if (!fin){ cout << "can not open treein.txt.\n"; exit(1); } fin >> T; ofstream fout; fout.open("Etreeout.txt", ios::out); if (!fout){ cout << "cannot open treeout.txt.\n"; exit(1); } fout << T; }break; case 2:{ cout << "从文件提取,输出至终端:" << endl; cin >> T; cout << "结果:\n"<<T; }break; } system("pause"); return 0; } //输入文件信息 <Nodes> 13 <Root> A <Others> B C D E F G H I J K L M <Childs> 12 A B A C A D B E B F C G D H D I D J G K G L J M //调试信息 d:\vc++6.0\microsoft visual studio\vc98\include\list.h(37) : error C2146: syntax error : missing ';' before identifier 'Length' d:\vc++6.0\microsoft visual studio\vc98\include\list.h(37) : error C2501: 'DWORD' : missing storage-class or type specifiers d:\vc++6.0\microsoft visual studio\vc98\include\list.h(37) : error C2501: 'Length' : missing storage-class or type specifiers d:\vc++6.0\microsoft visual studio\vc98\include\list.h(53) : error C2146: syntax error : missing ';' before identifier 'GetPrevLink' d:\vc++6.0\microsoft visual studio\vc98\include\list.h(53) : error C2433: 'WINAPI' : 'inline' not permitted on data declarations d:\vc++6.0\microsoft visual studio\vc98\include\list.h(53) : fatal error C1004: unexpected end of file found
请问一下,为什么这个语句会导致LNK2019编译错误?
我在编写一个链表代码进行调试的时候出现了 错误 LNK2019 无法解析的外部符号 然后我在修改后发现删掉这一句pNext = new Node[sizeof(Node)];就不会报错 这是什么原因? 以下是源代码 ` ``` #pragma once #include <iostream> #include <fstream> #include "stu_anal.h" class Node { public: Node * Add(); void Delete(); void fix(); void search(); void rank_in_Chinese(); void rank_in_Math(); void rank_in_English(); void rank_in_Total(); Node(); protected: stu_anal st; Node *pNext; Node *pHead; Node *pTail; }; ``` 这是头文件的代码 ``` #include "Node.h" #include "stu_anal.h" #include "stu_info.h" #include "stu_score.h" Node *Node:: Add() { if (pHead == NULL) { pNext = new Node[sizeof(Node)]; if (pHead == NULL) { cout << "error!" << endl; exit(0); } cout << "请输入学生的信息:" << endl; cout << "名字:"; cin >> pNext->st.name; cout << "性别:"; cin >> pNext->st.sex; cout << "年龄:"; cin >> pNext->st.age; cout << "语文成绩:"; cin >> pNext->st.Chinese; cout << "数学成绩:"; cin >> pNext->st.Math; cout << "英语成绩:"; cin >> pNext->st.English; pHead= pTail = pNext; pTail->pNext = NULL; cout << "信息已录入." << endl; } ``` 这是cpp文件的代码
这个非常简单的代码,为啥用了函数就报错呢
题目是:输入n,在输入n个数<(2∧31-1)求这n个数的平方和 我的代码: #include<iostream> #include <algorithm> #include <cstring> #include <stdio.h> #include <math.h> using namespace std; long long sum(long long data,int n) { long long ans; ans=0; for(int i=0;i<n;i++) ans+=data[i]*data[i]; return ans; } int main() { long long data[1005]; int n; while(cin>>n) { for(int i=0;i<n;i++) { cin>>data[i]; } cout<<sum(data,n)<<endl; } return 0; }
c++中c_str()函数--一道简单的机试题
题目描述: 输入一个字符串,长度小于等于200,然后将输出按字符顺序升序排序后的字符串。 输入: 测试数据有多组,输入字符串。 输出: 对于每组输入,输出处理后的结果。 样例输入: bacd 样例输出: abcd 源代码: #include<stdio.h> #include<iostream> #include<string.h> #include<algorithm> #include<cstring> using namespace std; int main() { int i = 0,j,num; string in; char* arr = new char[200]; int len = 0; while(cin>>in) { strcpy(arr,in.c_str()); len = strlen(arr); sort(arr,arr+len); for(i = 0; i < len; i++) { cout<<arr[i]; } cout<<endl; } return 0; } 这个代码一直报错为: Runtime Error,请大家教教我把,实在是看不出了 (其实这个题有多种解法我知道,我就想知道为甚这么写的时候报这个错误) 来源:http://ac.jobdu.com/problem.php?pid=1054
两个含有class的头文件如何在同一个源文件上运行?
程序的目的是输入城市及其坐标计算两地距离,要求class要在各自的头文件里 1. City.h ``` #ifndef POINT_CLASS_HEADER_INCLUDED #define POINT_CLASS_HEADER_INCLUDED #include<iostream> #include<string> const int MAX_CITY_NAME = 6; class City { private: char name[MAX_CITY_NAME][20]; int count; public: City():name(),count(0){} void get_name() { std::cin.ignore(); std::cout<<"\nEnter the name of a city:"; std::cin.getline(name[count],20); count++; } void print_name() { for(int i = 1; i<= count; i++) { std::cout<<i<<")"<<name[i-1]<<"\n"; } std::cout<<"\n"; } }; #endif ``` 2.Point.h ``` #ifndef POINT_CLASS_HEADER_INCLUDED #define POINT_CLASS_HEADER_INCLUDED #include<iostream> class Point { private: double x[6], y[6]; int count; public: Point():count(0){}; void Point::Input() { std::cout<<"Enter the x-axis of this city:"; std::cin>>x[6]; std::cout<<"Enter the y-axis of this city:"; std::cin>>y[6]; count++; } void Point::print_pt() { std::cout<<"("<<x[count]<<","<<y[count]<<")\n"; } }; #endif ``` 3.distance.cpp ``` #include<string> #include<iostream> #include"city.h" #include"point.h" using namespace std; int main() { system("clear"); char i; bool quit = true; City ob1; Point ob2; do{ cout<<"1.Enter city Information\n" <<"2.Caluslate Distance between two cities\n" <<"3.Print All cities\n" <<"4.Quit\n"; cin>>i; switch(i) { case'1': case'E': ob1.get_name(); ob2.Input(); break; case'3': case'P': ob1.print_name(); ob2.print_pt(); break; case'4': case'Q': quit = false; break; } ``` 调换位置任意一个class都会报错 [Error] aggregate 'Point ob2' has incomplete type and cannot be defined
ReadFile函数参数列表中报错说缺少分号 求神来解
#include"Compress.h" #include<iostream> #include<fstream> #include<stdlib.h> using namespace std; bool readFile(const char *fileName); int main(){ bool ReadFile(char *fileName); cout<<"=======Huffman文件压缩======"<<endl; cout<<"请输入文件名:"; char fileName[256]; cin>>fileName; Compress(fileName); bool ReadFile(char *fileName){ int weight[256]; //记录各字节重复次数 char ch; ifstream in; in.open(fileName);//以二进制流方式读取文件 while((ch=getc(in))!=EOF) //扫描文件 获得权重 weight[ch]++; fclose(in); //关闭文件 return true; } int outputWeight(){ cout<<"Byte"<<"Weight"<<endl; for(int i=0;i<256;I++) printf("Ox%O2X %d",i,weight[i]); return 0; } return 0; }
c++ 这个报错是什么原因?如何解决?
以下代码在编译时报错: ``` #include<iostream> using namespace std; string type_get, str_empty, str_num1, str_num2; string to_do = "+-*/"; int empty, i, operator_num, num1, num2; int flag = 1;//flag=1:运行,flag=0:退出 int plus(int num1,int num2) { int result; result = num1 + num2; return result; } int minus(int num1,int num2) { int result; result = num1 - num2; return result; } int multiply(int num1,int num2) { int result; result = num1 * num2; return result; } int divide(int num1,int num2) { int result; result = num1 / num2; return result; } int main() { while(flag) { cin >> type_get; if (type_get == "exit") { flag = 0; } else { operator_num = type_get.find_first_of(to_do); char array_type_get[type_get.length()]; for (i = 0; i < type_get.length(); i++) { array_type_get[i] = type_get[i]; } for (i = 0; i < operator_num; i++) { str_num1[i] = array_type_get[i]; } for (i = operator_num + 1; i < sizeof(array_type_get); i++) { str_num2[i] = array_type_get[i]; } num1 = atoi(str_num1.c_str()); num2 = atoi(str_num2.c_str()); switch (array_type_get[operator_num]) { case "+" : plus(num1,num2); break; case "-" : minus(num1,num2); break; case "*" : multiply(num1,num2); break; case "/" : divide(num1,num2); break; default : cout << "请输入一个运算符!" << endl; break; } } } return 0; } ``` 报错信息如下: ``` calculator.cpp: In function 'int main()': calculator.cpp:73:10: error: invalid conversion from 'const char*' to 'int' [-fpermissive] case "+" : ^~~ calculator.cpp:73:10: error: conversion from pointer type 'const char (*)[2]' to arithmetic type 'int' in a constant expression calculator.cpp:74:6: error: reference to 'plus' is ambiguous plus(num1,num2); ^~~~ In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\string:48, from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\locale_classes.h:40, from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\ios_base.h:41, from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ios:42, from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ostream:38, from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\iostream:39, from calculator.cpp:1: c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_function.h:147:12: note: candidates are: 'template<class _Tp> struct std::plus' struct plus; ^~~~ calculator.cpp:8:5: note: 'int plus(int, int)' int plus(int num1,int num2) ^~~~ calculator.cpp:77:10: error: invalid conversion from 'const char*' to 'int' [-fpermissive] case "-" : ^~~ calculator.cpp:77:10: error: conversion from pointer type 'const char (*)[2]' to arithmetic type 'int' in a constant expression calculator.cpp:78:6: error: reference to 'minus' is ambiguous minus(num1,num2); ^~~~~ In file included from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\string:48, from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\locale_classes.h:40, from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\ios_base.h:41, from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ios:42, from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\ostream:38, from c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\iostream:39, from calculator.cpp:1: c:\mingw\lib\gcc\mingw32\8.2.0\include\c++\bits\stl_function.h:150:12: note: candidates are: 'template<class _Tp> struct std::minus' struct minus; ^~~~~ calculator.cpp:15:5: note: 'int minus(int, int)' int minus(int num1,int num2) ^~~~~ calculator.cpp:81:10: error: invalid conversion from 'const char*' to 'int' [-fpermissive] case "*" : ^~~ calculator.cpp:81:10: error: conversion from pointer type 'const char (*)[2]' to arithmetic type 'int' in a constant expression calculator.cpp:85:10: error: invalid conversion from 'const char*' to 'int' [-fpermissive] case "/" : ^~~ calculator.cpp:85:10: error: conversion from pointer type 'const char (*)[2]' to arithmetic type 'int' in a constant expression ``` **_在这上面卡了好几天了,求各位大神解答!_**
C++操作符【】重载BUG
小白一只,最近在学C++重载符时,想到能不能写一个链表类,重载[]来模拟数组,但遇到了BUG 代码如下: List.h: #include <iostream> using namespace std; struct List { int data; //数据; struct List * pNext; //指向下一节点 }; class L { public: L(); int operator[](int n) const; ~L(); private: int count; //数据个数; struct List * Phead; //链表头指针; }; List.cpp: #include "A.h" #include <iostream> using namespace std; L::L() //创建链表; { struct List * Phead,* p1,* p2; Phead = new struct List; p1 = p2 = Phead; cout<<"请输入数据个数"<<endl; //输入数据个数; cin>>count; for (int i = 1; i <= count ; ++i) //创建链表节点来储存数据; { p1 = new struct List; cout<<"请输入第"<<i<<"个数据"<<endl; cin>>p1->data; p2->pNext = p1; p2 = p1; } p1 ->pNext = NULL; } int L::operator[](int n) const { if (n+1>count) //检查越界; { cout<<"数组越界"<<endl; exit(0); } struct List * p = Phead->pNext; for (int i = 0;i < n; ++i) //找出第n个节点; { p = p->pNext; //BUG!!!! } return p->data; //返回数据; } L::~L() //销毁链表; { ... } main: #include <iostream> #include <stdlib.h> #include "List.h" using namespace std; int main(void) { L l1; cout<<l1[0]<<endl; system("pause"); return 0; } 调试的时候第一次到BUG那行就报错,但我找不出来错误,因为在别的函数中p=p->pNext是允许的,求教大神。
c++对象数组 构造函数
题目是一个打印工资单(payrate*hours),数组里有七个对象,需要每个对象的输入时间(hour)乘payRate,最后返回到payTotal里,可是不知道怎么把键盘输入的存入对象数组里,而且总是报错,而且后面函数里的变量好像也有点问题,没用到数组,不知道怎么改啊,急求解答!!!!!非常感谢!! 这是main函数的cpp ``` #include <iostream> #include <iomanip> #include "Payroll.h" using namespace std; int main() { const int NUM_EMP = 7; double value; int num; Payroll employee[NUM_EMP]; cout << "Enter the payRate for the employee: "; cin >> num; for(int i=0;i<NUM_EMP;i++) { cout << "Employee" << i+1 << " : " << "Enter the numbers of hours: "; cin >> employee[i]; } Payroll item(); cout << setprecision(2) << fixed; for(int k=0;k<NUM_EMP;k++) { cout << "The amount of gross pay for employee" << k+1 << ": " << employee[k].getTotalPay << endl; } return 0; } ``` 下面是Payroll.cpp ``` #include "Payroll.h" // Needed for the Rectangle class #include <iostream> // Needed for cout #include <cstdlib> // Needed for the exit function using namespace std; Payroll::Payroll() { hours = 0.0; payRate = 0.0; } void Payroll::setHours(double hou) { if(hou <= 60.00) hours = hou; else { cout << "Please Enter the valid numbers: "; exit(EXIT_FAILURE); } } void Payroll::setPayRate(double pay) { payRate = pay; } ``` 最后是payroll.h ``` #ifndef PAYROLL_H #define PAYROLL_H class Payroll { private: double hours; double payRate; public: Payroll(); void setHours(double); void setPayRate(double); double getHours() const { return hours; } double getPayRate() const { return payRate; } double getTotalPay() const { return hours * payRate; } }; #endif ```
求高手帮忙解答一下c++的问题,我不知道哪里有问题?
//rectangular.h #include<iostream.h> class rectangular {public: rectangular(float a=3,float b=4,float c=5); void in_output(); private: float length,width,height,volume; }; rectangular::rectangular(float a,float b,float c) { length=a; width=b; height=c; } //rectangular.cpp #include"rectangular.h" void rectangular::in_output() { cout<<"请分别输入长方柱的长宽高:"<<endl; cin>>length>>width>>height; volume=length*width*height; cout<<"体积:"<<volume<<endl; } //file.cpp #include"rectangular.h" int main() { rectangular v1; rectangular V2(6); rectangular V3(7,8); rectangular V4(9,10,11); cout<<"第一个体积:"<<endl; v1.in_output(); cout<<"第二个体积:"<<endl; v2(6).in_output(6); cout<<"第三个体积:"<<endl; v3(7,8).in_output(7,8); cout<<"第四个体积:"<<endl; v4(9,10,11).in_output(9,10,11); return 0; } 报错: file2.cpp D:\file2.cpp(11) : error C2065: 'v2' : undeclared identifier D:\file2.cpp(11) : error C2228: left of '.in_output' must have class/struct/union type D:\file2.cpp(13) : error C2065: 'v3' : undeclared identifier D:\file2.cpp(13) : error C2228: left of '.in_output' must have class/struct/union type D:\file2.cpp(15) : error C2065: 'v4' : undeclared identifier D:\file2.cpp(15) : error C2228: left of '.in_output' must have class/struct/union type 执行 cl.exe 时出错. file2.obj - 1 error(s), 0 warning(s)
C++打开含有数据的二进制文件报错,如何解决?
我用C++做了一个图书管理系统,代码如下。刚开始没有创建数据文件时运行正常,但往文件中添加数据之后再运行程序就报错,求大神帮忙分析一下原因,本人将感激不尽! ![图片说明](https://img-ask.csdn.net/upload/201904/24/1556120533_390262.jpg) 调用堆栈: ![图片说明](https://img-ask.csdn.net/upload/201904/25/1556166036_26056.jpg) ``` //book.h #ifndef _book_h_ #define _book_h_ #include<iostream> #include<string> using namespace std; class Book //图书类 { private: int note; //删除标记(1:已删,0:未删) string number; //图书编号 string name; //书名 int onshelf; //上架标志 int count; //上架数量 public: Book() { note = 0; onshelf = 0; count = 0; } string getname(); //获得书名 int getnote(); //获得删除标记 string getnumber(); //获得图书编号 int getonshelf(); //获得上架标志(1.上架,0.下架) int getcount(); //获得上架数量 void setname(string na); //设置书名 void delbook(); //删除图书 void addbook(string n,string na); //添加图书 void addbook(int c); void borrowbook(); //借书操作 void rebook(); //还书操作 void list(); //输出图书列表 }; #endif //reader.h #ifndef _reader_h_ #define _reader_h_ #include<iostream> #include<string> using namespace std; const int maxbor = 5; //最大借阅量 class Reader { private: int note; //删除标记(1:已删,0:未删) string number; //读者编号 string name; //读者姓名 string borbook[maxbor]; //所借图书 public: Reader() { note = 0; } string getname(); //获得姓名 int getnote(); //获得删除标记 string getnumber(); //获得读者编号 void setname(string na); //设置姓名 void delreader(); //删除读者 void addreader(string n, string na); //添加读者 void borrowbook(string bookid); //借书操作 void rebook(string bookid); //还书操作 void list(); //输出读者信息 }; #endif //bdatabase.h #ifndef _bdatadase_h_ #define _bdatabase_h_ #include<iostream> #include"book.h" using namespace std; const int maxb = 100; //最大图书种类数 class BDatabase { private: int top; //图书记录指针 Book book[maxb]; //图书记录 public: BDatabase(); //构造函数:读文件 void clear(); //全部删除 void addbook(string n, string na, int c); //添加图书 Book* search(string bookid); //查找图书 void list(); //输出图书信息 void bookdata(); //图书库维护 ~BDatabase(); //析构函数:写文件 }; #endif //rdatabase.h #ifndef _rdatadase_h_ #define _rdatabase_h_ #include<iostream> #include"reader.h" using namespace std; const int maxr = 100; //最大读者数 class RDatabase { private: int top; //读者记录指针 Reader read[maxr]; //读者记录 public: RDatabase(); //构造函数:读文件 void clear(); //删除所有读者信息 void addreader(string n, string na); //添加读者 Reader* search(string readerid); //按编号查找 void list(); //输出所有读者信息 void readerdata(); //读者库维护 ~RDatabase(); //析构函数:写文件 }; #endif //book.cpp #include<iomanip> #include"book.h" string Book::getname() { return name; } int Book::getnote() { return note; } string Book::getnumber() { return number; } int Book::getonshelf() { return onshelf; } int Book::getcount() { return count; } void Book::setname(string na) { name = na; cout << "图书更改成功" << endl; } void Book::addbook(string n, string na) { note = 0; number = n; name = na; onshelf = 1; } void Book::addbook(int c) { count = count + c; } void Book::delbook() { note = 1; cout << "图书删除成功" << endl; } void Book::borrowbook() { if (count == 0) cout << "该图书已全部借出,不能借书!" << endl; else { count = count - 1; cout << "借书成功" << endl; } } void Book::rebook() { count = count + 1; cout << "还书成功" << endl; } void Book::list() { cout << setw(10) << number << setw(10) << name << setw(10) << onshelf << setw(10) << count << endl; } //reader.cpp #include<iomanip> #include"reader.h" string Reader::getname() { return name; } int Reader::getnote() { return note; } string Reader::getnumber() { return number; } void Reader::setname(string na) { name = na; cout << "读者更改成功" << endl; } void Reader::addreader(string n, string na) { note = 0; number = n; name = na; for (int i = 0; i < maxbor; i++) borbook[i] = "0"; } void Reader::delreader() { note = 1; cout << "读者删除成功" << endl; } void Reader::borrowbook(string bookid) { for (int i = 0; i < maxbor; i++) if (borbook[i] == "0") borbook[i] = bookid; } void Reader::rebook(string bookid) { for (int i = 0; i < maxbor; i++) if (borbook[i] == bookid) borbook[i] = "0"; } void Reader::list() { cout << setw(10) << number << setw(10) << name << setw(10); for (int i = 0; i < maxbor; i++) if (borbook[i] != "0") cout << borbook[i] << " "; cout << endl; } //bdatabase.cpp #include<iostream> #include<fstream> #include<iomanip> #include"bdatabase.h" using namespace std; BDatabase::BDatabase() { Book s; top = -1; fstream file; file.open("book.dat", ios::in | ios::binary); while (1) { file.read((char*)& s, sizeof(s)); if (!file)break; top++; book[top] = s; } file.close(); } void BDatabase::clear() { top = -1; cout << "全部图书删除成功" << endl; } Book* BDatabase::search(string bookid) { for (int i = 0; i <= top; i++) if (book[i].getnumber() == bookid && book[i].getnote() == 0) return &book[i]; return NULL; } void BDatabase::addbook(string n, string na,int c) { Book* p = search(n); if (p == NULL) { top++; book[top].addbook(n, na); book[top].addbook(c); } else p->addbook(c); cout << "图书添加成功" << endl; } void BDatabase::list() { cout << setw(10) << "图书编号" << setw(10) << "书名" << setw(10) << "上架标志" << setw(10) << "上架数量" << endl; for (int i = 0; i <= top; i++) if (book[i].getnote() == 0) book[i].list(); } BDatabase::~BDatabase() { fstream file; file.open("book.dat", ios::out | ios::binary | ios::app); for (int i = 0; i <= top; i++) if (book[i].getnote() == 0) file.write((char*)& book[i], sizeof(book[i])); file.close(); } void BDatabase::bookdata() { int choice = 1; string bookname; string bookid; int count; Book* b; while (choice != 0) { cout << "图书维护:" << endl; cout << "1:新增 2:更改 3:删除 4:查找 5:显示 6:全删 0:退出" << endl; cin >> choice; cin.ignore(); switch (choice) { case 1: cout << "输入图书编号:"; getline(cin, bookid); cout << "输入图书名:"; getline(cin, bookname); cout << "输入添加数量:"; cin >> count; cin.ignore(); addbook(bookid, bookname, count); break; case 2: cout << "输入图书编号:"; getline(cin, bookid); b = search(bookid); if (b == NULL) { cout << "该图书不存在!" << endl; break; } cout << "输入新的图书名:"; getline(cin, bookname); b->setname(bookname); break; case 3: cout << "输入图书编号:"; getline(cin, bookid); b = search(bookid); if (b == NULL) { cout << "该图书不存在!" << endl; break; } b->delbook(); break; case 4: cout << "输入图书编号:"; getline(cin, bookid); b = search(bookid); if (b == NULL) { cout << "该图书不存在!" << endl; break; } cout << setw(10) << "图书编号" << setw(10) << "书名" << setw(10) << "上架标志" << setw(10) << "上架数量" << endl; b->list(); break; case 5: list(); break; case 6: clear(); break; } } } //rdatabase.cpp #include<iostream> #include<fstream> #include<iomanip> #include"rdatabase.h" using namespace std; RDatabase::RDatabase() { Reader s; top = -1; ifstream file; file.open("reader.dat", ios::in | ios::binary); while (1) { file.read((char*)& s, sizeof(s)); if (!file)break; top++; read[top] = s; } file.close(); } void RDatabase::clear() { top = -1; cout << "全部读者删除成功" << endl; } Reader* RDatabase::search(string readerid) { for (int i = 0; i <= top; i++) if (read[i].getnumber() == readerid && read[i].getnote() == 0) return &read[i]; return NULL; } void RDatabase::addreader(string n, string na) { Reader* p = search(n); if (p == NULL) { top++; read[top].addreader(n, na); cout << "读者添加成功" << endl; } else cout << "该读者已存在!" << endl; } void RDatabase::list() { cout << setw(10) << "读者编号" << setw(10) << "读者姓名" << setw(10) << "借书编号" << endl; for (int i = 0; i <= top; i++) if(read[i].getnote()==0) read[i].list(); } RDatabase::~RDatabase() { fstream file; file.open("reader.dat", ios::out | ios::binary | ios::app); for (int i = 0; i <= top; i++) if (read[i].getnote() == 0) file.write((char*)& read[i], sizeof(read[i])); file.close(); } void RDatabase::readerdata() { int choice = 1; string readername; string readerid; Reader* r; while (choice != 0) { cout << "读者维护:" << endl; cout << "1:新增 2:更改 3:删除 4:查找 5:显示 6:全删 0:退出" << endl; cin >> choice; cin.ignore(); switch (choice) { case 1: cout << "输入读者编号:"; getline(cin, readerid); cout << "输入读者姓名:"; getline(cin, readername); addreader(readerid, readername); break; case 2: cout << "输入读者编号:"; getline(cin, readerid); r = search(readerid); if (r == NULL) { cout << "该读者不存在!" << endl; break; } cout << "输入新的姓名:"; getline(cin, readername); r->setname(readername); break; case 3: cout << "输入读者编号:"; getline(cin, readerid); r = search(readerid); if (r == NULL) { cout << "该读者不存在!" << endl; break; } r->delreader(); break; case 4: cout << "输入读者编号:"; getline(cin, readerid); r = search(readerid); if (r == NULL) { cout << "该读者不存在!" << endl; break; } cout << setw(10) << "读者编号" << setw(10) << "读者姓名" << setw(10) << "借书编号" << endl; r->list(); break; case 5: list(); break; case 6: clear(); break; } } } //library.cpp #include"reader.h" #include"rdatabase.h" #include"book.h" #include"bdatabase.h" #include<iostream> using namespace std; int main() { int choice = 1; string bookid, readerid; RDatabase ReaderDB; BDatabase BookDB; Reader* r; Book* b; cout << "欢迎进入“小小图书馆”管理软件" << endl << endl; while (choice != 0) { cout << "1: 借书 2: 还书 3: 图书维护 4: 读者维护 0: 离开" << endl; cin >> choice; cin.ignore(); switch (choice) { case 1: system("cls"); cout << "输入借书读者编号"; getline(cin, readerid); cout << "输入图书编号"; getline(cin, bookid); r = ReaderDB.search(readerid); if (r == NULL) { cout << "该读者不存在,不能借书!" << endl; break; } b = BookDB.search(bookid); if (b == NULL) { cout << "该图书不存在,不能借书!" << endl; break; } b->borrowbook(); r->borrowbook(b->getnumber()); break; case 2: system("cls"); cout << "输入还书读者编号"; getline(cin, readerid); cout << "输入图书编号"; getline(cin, bookid); r = ReaderDB.search(readerid); if (r == NULL) { cout << "该读者不存在,不能还书!" << endl; break; } b = BookDB.search(bookid); if (b == NULL) { cout << "该图书不存在,不能还书!" << endl; break; } b->rebook(); r->rebook(b->getnumber()); break; case 3: system("cls"); BookDB.bookdata(); break; case 4: system("cls"); ReaderDB.readerdata(); break; } } return 0; } ```
程序报错求解决 输出到文件
调试环境:vc++6.0 报错:error C2679: binary '<<' : no operator defined which takes a right-hand operand of type '' (or there is no acceptable conversion) 源代码: // TO DO A LIST #include<iostream.h> #include<string.h> #include<stdlib.h> #include<conio.h> #include<fstream.h> class Date //日期 { int year,month,day; public: Date(int i=2000,int j=1 ,int k=1) { year=i;month=j;day=k; } void Dprint() { cout<<"截止日期:"<<year<<"."<<month<<"."<<day; } int get_year() { return year; } int get_month() { return month; } int get_day() { return day;} }; class Time //时间 { int hour,min; public: Time(int i=0,int j=0) { hour=i;min=j; } void Tprint() { cout<<"截止时间:"<<hour<<":"<<min; } int get_hour() { return hour; } int get_min() { return min; } }; class List:public Date,public Time //继承日期和时间 { char List_name[100]; //任务标题 char List_dis[100]; //任务描述 public: List (int a,int b,int c,int d,int e,char *name,char *dis):Date(a,b,c),Time(d,e) { strcpy(List_name,name); strcpy(List_dis,dis); } List() //无参构造函数 {} void Lprint() { cout<<"任务标题:"<<List_name<<endl; cout<<"任务描述:"<<List_dis<<endl; } char* get_name() { return List_name;} char* get_dis() { return List_dis;} }; void menu() //菜单显示 { cout<<"按1添加新任务"<<" "<<"按2查看现有任务"<<'\n'<<"按0退出"; } void Add_task(List &A) { int a,b,c,d,e; char name[100],dis[100]; cout<<"请输入任务名称"; cin>>name; cout<<"请输入任务描述"; cin>>dis; cout<<"请输入截止日期(格式为2000 1 1)"; cin>>a>>b>>c; cout<<"请输入截止时间(格式为18 32)"; cin>>d>>e; A=List(a,b,c,d,e,name,dis); } void Print(List A) { A.Dprint();cout<<endl; A.Tprint();cout<<endl; A.Lprint();cout<<endl; } void main() { List *p;int m; static int n=0; //记录有多少组任务 p=new List[100] ; ofstream out; for(int i=0;i<100;i++) { menu(); cin>>m; if(m==0||m==2) break; if(m==1) { Add_task(p[i]); cout<<"添加成功,按任意键继续"<<endl; n++; getch(); // 暂停程序运行,按任意键继续 system("cls"); //清空屏幕 } } if(m=2) { out.open("任务清单.txt"); for(i=0;i<n;i++) { out<<i+1<<"."; out<<"名称:"<<p[i].get_name<<endl; out<<"描述:"<<p[i].get_dis<<endl; out<<"日期:"<<p[i].get_year<<" "<<p[i].get_month<<" "<<p[i].get_day<<endl; out<<"时间:"<<p[i].get_hour<<" "<<p[i].get_min; out<<"---------------------------"; } } }
关于c++ error LNK2019: unresolved external symbol 问题
我运行了一个程序,报出如下错: Error 1 error LNK2019: unresolved external symbol "public: __thiscall CircList<double>::CircList<double>(int)" (??0?$CircList@N@@QAE@H@Z) referenced in function _wmain Error 2 error LNK2019: unresolved external symbol "public: __thiscall CircList<double>::~CircList<double>(void)" (??1?$CircList@N@@QAE@XZ) referenced in function _wmain Error 3 error LNK2019: unresolved external symbol "public: struct CircListNode<double> * __thiscall CircList<double>::Locate(int)" (?Locate@?$CircList@N@@QAEPAU?$CircListNode@N@@H@Z) referenced in function "void __cdecl Josephus<double>(class CircList<double> &,int,int,int)" (??$Josephus@N@@YAXAAV?$CircList@N@@HHH@Z) Error 4 error LNK1120: 3 unresolved externals 程序代码如下: ``` #ifndef CIRCLIST_H_ #define CIRCLIST_H_ template <class T> struct CircListNode{ T data; CircListNode<T> * link; }; template <class T> class CircList{ private: CircListNode<T> * first; public: CircList(){} CircList(int i); ~CircList(); CircListNode<T> * Locate(int i); }; #endif ``` ``` #include "stdafx.h" #include "circList.h" #include <iostream> using namespace std; template<class T> CircList<T>::CircList(int i) { T value; first = new CircListNode < T > ; for (int j = 0; j < i; j++) { CircListNode<T> * newNode = new CircListNode < T > ; cout << "请输入第" << j + 1 << "个节点的值:"; getline(cin, value); newNode->data = valude; newNode->link = first->link; first->link = newNode; } cout << "一个包含" << i << "个节点的循环表建立成功!" << endl; } template<class T> CircList<T>::~CircList() { CircListNode<T> * q; while (first->link != NULL) { q = first->link; first->link = q->link; delete q; } delete first; } template<class T> CircListNode<T> * CircList<T>::Locate(int i) { CircListNode<T> * current = new CircListNode < T > ; if (current == NULL) { cout << "内存分配错误!" << endl; return NULL; } else { current = first->link; for (int j = 1; j < i - 1; j++) current = current->link; return current; } } ``` ``` // ex2-5.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> #include "circList.h" using namespace std; template<class T> void Josephus(CircList<T> & js, int n, int s, int m); int _tmain(int argc, _TCHAR* argv[]) { int n, s, m; cout << "请输入游戏人数、开始位置和报数间隔: "; cin >> n >> s >> m; CircList<double> clist(n); Josephus(clist, n, s, m); return 0; } template<class T> void Josephus(CircList<T> & js, int n, int s, int m) { CircListNode<T> * p = js.Locate(s), *pre = NULL; for (int i = 0; i < n - 1; i++) { for (int j = 1; j < m; j++) { pre = p; p = p->link; } cout << "出列的人是" << p->data << endl; pre->link = p->link; p = pre->link; } } ``` 求大神解释一下,谢谢了
c++报错:invalid conversion from int to int
错误已表明位置,初学求轻喷... 做一个计步软件求每周的步数最大值最小值以及平均值,要求输入多组数据并在最开始输入数据的组数T #include <iostream> #include <math.h> using namespace std; class Step { public: Step(int a[7]); Step(const Step &c); ~Step(){} int getMax(); int getMin(); float getAverage(); void showAnswer(); private: static float Averstep; int Maxstep,Minstep; int step[7]; }; Step::Step(int a[7]) { for(int i=0;i<7;i++) { step[i]=a[i]; } } Step::Step(const Step &c) { for(int i=0;i<7;i++) { step[i]=c.step[i]; } } float Step::getAverage() { for(int i=0;i<=6;i++) Averstep=(Averstep+step[i])/7; return Averstep; } int Step::getMax() { int Maxstep=step[0]; for (int i=1;i<=6;i++) { if (step[i]>Maxstep) { Maxstep=step[i]; } } return Maxstep; } int Step::getMin() { int Minstep=step[0]; for (int i=1;i<=6;i++) if (step[i]<Minstep) { Minstep=step[i]; } return Minstep; } void Step::showAnswer() { cout<<Maxstep<<endl<<Minstep<<endl<<floor(Averstep); } float Step::Averstep=0.0; int main() { int T; int step[7]; cin>>T; while(cin>>step[0]>>step[1]>>step[2]>>step[3]>>step[4]>>step[5]>>step[6]) { **_Step x(step[7]);_** *****(错误位置)***** x.showAnswer(); } return 0; } ``` ```
c++报错undefined reference to "析构函数",引号里的析构函数是基类的析构函数,声明为了纯虚函数?
这是c++ primer plus第六版中的程序清单14.10,P560页。 一模一样,就是这样报错,也没办法继续写下去了。 自学的,没办法了,不知道找谁问,贼难受!!! ``` //类声明 #ifndef WORKER_H_ #define WORKER_H_ #include <string> using std::string; class Worker{ private: string fullname; long id; protected: virtual void Data() const; virtual void Get(); public: Worker() : fullname("no one"), id(0L) {} Worker(const string & s, long n) : fullname(s), id(n) {} virtual ~Worker() = 0; virtual void Set() = 0; virtual void Show() const = 0; }; class Waiter : virtual public Worker { private: int panache; protected: virtual void Data() const; virtual void Get(); public: Waiter() : Worker(), panache(0) {} Waiter(const string & s, long n, int p = 0) : Worker(s, n), panache(p) {} Waiter(const Worker & wk, int p = 0) : Worker(wk), panache(p) {} void Set(); void Show() const; }; #endif ``` ``` //实现文件 #include <iostream> #include "worker.h" using namespace std; //Worker 方法 void Worker::Data() const { cout << "名字:" << fullname << endl; cout << "工号:" << id << endl; } void Worker::Get() { getline(cin,fullname); cout << "请输入工号:"; cin >> id; while (cin.get() != '\n') continue; } //Waiter 方法 void Waiter::Data() const { cout << "等级:" << panache << endl; } void Waiter::Get() { cout << "请输入等级:"; cin >> panache; while (cin.get() != '\n') continue; } void Waiter::Set() { cout << "请输入服务员的姓名:" << endl; Worker::Get(); Get(); } void Waiter::Show() const { Worker::Data(); Data(); } ```
新人求助,刚刚学的C++,程序报错如下
// TO DO A LIST #include<iostream.h> #include<string.h> class Date //日期 { int year,month,day; public: Date(int i=2000,int j=1 ,int k=1) { year=i;month=j;day=k; } void Dprint() { cout<<"截止日期:"<<year<<"."<<month<<"."<<day; } }; class Time //时间 { int hour,min; public: Time(int i,int j) { hour=i;min=j; } void Tprint() { cout<<"截止时间:"<<hour<<":"<<min; } }; class List:public Date,public Time //继承日期和时间 { char List_name[100]; //任务标题 char List_dis[100]; //任务描述 public: List (a,b,c,d,e,*name,*dis):Date(a,b,c),Time(d,e) { strcpy(List_name,name); strcpy(List_dis,dis); } void Lprint() { cout<<"任务标题:"<<List_name<<endl; cout<<"任务描述:"<<List_dis<<endl; } }; void menu() //菜单显示 { cout<<"按1添加新任务"<<'\n'<<"按2查看现有任务"<<'\n'; } List Add_task(List A) { int a,b,c,d,e; char name[100],dis[100]; cout<<"请输入任务名称"; cin>>name;cout<<endl; cout<<"请输入任务描述"; cin>>dis;cout<<endl; cout<<"请输入截止日期(格式为2000 1 1)"; cin>>a>>b>>c;cout<<endl; cout<<"请输入截止时间(格式为16 32)"; cin>>d>>e; return A(a,b,c,d,e,name,dis); } void Print(List A) { A.Dprint;cout<<endl; A.Tprint;cout<<endl; A.Tprint; } E:\C++\大作业\start.cpp(36) : error C2629: unexpected 'class List (' E:\C++\大作业\start.cpp(36) : error C2334: unexpected token(s) preceding ':'; skipping apparent function body E:\C++\大作业\start.cpp(63) : error C2064: term does not evaluate to a function
【初学c++】创建对象数组s[10],只用到一部分,析构时报错
题目是创建一个学生类,包含名字,学号,分数,从键盘输入学生个数及其他信息,最后输出名字,学好,成绩,并求出平均分。 我认为是由于创建了对象数组s1[10],只用到一部分,剩余部分没有创建,所以析构时出错。求解答。 #include<iostream> #include<assert.h> #include<string.h> using namespace std; class s //定义一个学生类 包含名字 学号 分数 输出/入函数 { char *name; int no; public: int sc; //sc为分数 no为学号 sets(char *n,int nu,int s) //从键盘获取信息的函数 { name=new char[10]; assert(name!=NULL); strcpy(name,n); no=nu; sc=s; } ~s() { delete[]name; cout<<"destructor"<<endl;//检测是否正常析构 } void show() { cout<<name<<" "<<no<<" "<<sc<<endl; } }; int main() { int m,n,i,r,su;//r为学生人数,su为学生分数总和 cin>>r; s s1[10]; //不确定学生人数,创建一个对象数组(假设学生人数小于11) char *na;//sets函数的实参,表示学生名字 for(i=0;i<r;i++) { na=new char[10]; assert(na!=NULL); cin>>na>>m>>n; s1[i].sets(na,m,n); delete[]na; } for(i=0;i<r;i++) {s1[i].show();} cin>>su; return 0; } ``` ```
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私...
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
面试官问我:什么是消息队列?什么场景需要他?用了会出现什么问题?
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式和人才交流群,欢迎Star和完善 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸...
8年经验面试官详解 Java 面试秘诀
作者 |胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三百位候选人。在本文里,就将结合本人的面试经验,针对Java初学者、Java初级开发和Java开发,给出若干准备简历和准备面试的建议。 Java程序员准备和投递简历的实...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观...
MyBatis研习录(01)——MyBatis概述与入门
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis原本是apache的一个开源项目iBatis, 2010年该项目由apache software foundation 迁移到了google code并改名为MyBatis 。2013年11月MyBatis又迁移到Github。
程序员一般通过什么途径接私活?
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip installselenium -ihttps://pypi.tuna.tsinghua.edu.cn/simple/ ...
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca...
Python爬虫精简步骤1 获取数据
爬虫,从本质上来说,就是利用程序在网上拿到对我们有价值的数据。 爬虫能做很多事,能做商业分析,也能做生活助手,比如:分析北京近两年二手房成交均价是多少?广州的Python工程师平均薪资是多少?北京哪家餐厅粤菜最好吃?等等。 这是个人利用爬虫所做到的事情,而公司,同样可以利用爬虫来实现巨大的商业价值。比如你所熟悉的搜索引擎——百度和谷歌,它们的核心技术之一也是爬虫,而且是超级爬虫。 从搜索巨头到人工...
Python绘图,圣诞树,花,爱心 | Turtle篇
每周每日,分享Python实战代码,入门资料,进阶资料,基础语法,爬虫,数据分析,web网站,机器学习,深度学习等等。 公众号回复【进群】沟通交流吧,QQ扫码进群学习吧 微信群 QQ群 1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle()...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东...
破14亿,Python分析我国存在哪些人口危机!
一、背景 二、爬取数据 三、数据分析 1、总人口 2、男女人口比例 3、人口城镇化 4、人口增长率 5、人口老化(抚养比) 6、各省人口 7、世界人口 四、遇到的问题 遇到的问题 1、数据分页,需要获取从1949-2018年数据,观察到有近20年参数:LAST20,由此推测获取近70年的参数可设置为:LAST70 2、2019年数据没有放上去,可以手动添加上去 3、将数据进行 行列转换 4、列名...
web前端javascript+jquery知识点总结
1.Javascript 语法.用途 javascript 在前端网页中占有非常重要的地位,可以用于验证表单,制作特效等功能,它是一种描述语言,也是一种基于对象(Object)和事件驱动并具有安全性的脚本语言 ...
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。
听说想当黑客的都玩过这个Monyer游戏(1~14攻略)
第零关 进入传送门开始第0关(游戏链接) 请点击链接进入第1关: 连接在左边→ ←连接在右边 看不到啊。。。。(只能看到一堆大佬做完的留名,也能看到菜鸡的我,在后面~~) 直接fn+f12吧 &lt;span&gt;连接在左边→&lt;/span&gt; &lt;a href="first.php"&gt;&lt;/a&gt; &lt;span&gt;←连接在右边&lt;/span&gt; o...
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ...... ...
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!...
渗透测试-灰鸽子远控木马
木马概述 灰鸽子( Huigezi),原本该软件适用于公司和家庭管理,其功能十分强大,不但能监视摄像头、键盘记录、监控桌面、文件操作等。还提供了黑客专用功能,如:伪装系统图标、随意更换启动项名称和表述、随意更换端口、运行后自删除、毫无提示安装等,并采用反弹链接这种缺陷设计,使得使用者拥有最高权限,一经破解即无法控制。最终导致被黑客恶意使用。原作者的灰鸽子被定义为是一款集多种控制方式于一体的木马程序...
Python:爬取疫情每日数据
前言 目前每天各大平台,如腾讯、今日头条都会更新疫情每日数据,他们的数据源都是一样的,主要都是通过各地的卫健委官网通报。 以全国、湖北和上海为例,分别为以下三个网站: 国家卫健委官网:http://www.nhc.gov.cn/xcs/yqtb/list_gzbd.shtml 湖北卫健委官网:http://wjw.hubei.gov.cn/bmdt/ztzl/fkxxgzbdgrfyyq/xxfb...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合...
雷火神山直播超两亿,Web播放器事件监听是怎么实现的?
Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播。在视频业务大数据平台中,播放数据的统计分析非常重要,所以Web播放器在使用过程中,需要对其内部的数据进行收集并上报至服务端,此时,就需要对发生在其内部的一些播放行为进行事件监听。 那么Web播放器事件监听是怎么实现的呢? 01 监听事件明细表 名...
3万字总结,Mysql优化之精髓
本文知识点较多,篇幅较长,请耐心学习 MySQL已经成为时下关系型数据库产品的中坚力量,备受互联网大厂的青睐,出门面试想进BAT,想拿高工资,不会点MySQL优化知识,拿offer的成功率会大大下降。 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 设计...
Python新型冠状病毒疫情数据自动爬取+统计+发送报告+数据屏幕(三)发送篇
今天介绍的项目是使用 Itchat 发送统计报告 项目功能设计: 定时爬取疫情数据存入Mysql 进行数据分析制作疫情报告 使用itchat给亲人朋友发送分析报告 基于Django做数据屏幕 使用Tableau做数据分析 来看看最终效果 目前已经完成,预计2月12日前更新 使用 itchat 发送数据统计报告 itchat 是一个基于 web微信的一个框架,但微信官方并不允许使用这...
作为程序员的我,大学四年一直自学,全靠这些实用工具和学习网站!
我本人因为高中沉迷于爱情,导致学业荒废,后来高考,毫无疑问进入了一所普普通通的大学,实在惭愧???? 我又是那么好强,现在学历不行,没办法改变的事情了,所以,进入大学开始,我就下定决心,一定要让自己掌握更多的技能,尤其选择了计算机这个行业,一定要多学习技术。 在进入大学学习不久后,我就认清了一个现实:我这个大学的整体教学质量和学习风气,真的一言难尽,懂的人自然知道怎么回事? 怎么办?我该如何更好的提升自...
粒子群算法求解物流配送路线问题(python)
1.Matlab实现粒子群算法的程序代码:https://www.cnblogs.com/kexinxin/p/9858664.html matlab代码求解函数最优值:https://blog.csdn.net/zyqblog/article/details/80829043 讲解通俗易懂,有数学实例的博文:https://blog.csdn.net/daaikuaichuan/article/...
教你如何编写第一个简单的爬虫
很多人知道爬虫,也很想利用爬虫去爬取自己想要的数据,那么爬虫到底怎么用呢?今天就教大家编写一个简单的爬虫。 下面以爬取笔者的个人博客网站为例获取第一篇文章的标题名称,教大家学会一个简单的爬虫。 第一步:获取页面 #!/usr/bin/python # coding: utf-8 import requests #引入包requests link = "http://www.santostang....
前端JS初级面试题二 (。•ˇ‸ˇ•。)老铁们!快来瞧瞧自己都会了么
1. 传统事件绑定和符合W3C标准的事件绑定有什么区别? 传统事件绑定 &lt;div onclick=""&gt;123&lt;/div&gt; div1.onclick = function(){}; &lt;button onmouseover=""&gt;&lt;/button&gt; 注意: 如果给同一个元素绑定了两次或多次相同类型的事件,那么后面的绑定会覆盖前面的绑定 (不支持DOM事...
相关热词 c# 为空 判断 委托 c#记事本颜色 c# 系统默认声音 js中调用c#方法参数 c#引入dll文件报错 c#根据名称实例化 c#从邮件服务器获取邮件 c# 保存文件夹 c#代码打包引用 c# 压缩效率
立即提问