为什么cin对fail的检查总是滞后一位?

下面是我的代码:
int main()
{
using namespace std;

char ch;
int count = 0;

cout << "Enter a sentence : ";
while (ch=cin.get()!=EOF)
    count++;

cout << "The last ch is: " << ch << endl;
cout << "You have entered " << count << " chars." << endl;

return 0;

}
如果输入是“I”+,那么这里的输入总是对EOF没有反应,无法终止循环,再单独输入一个EOF才能终止;如果直接输入EOF反而可以直接终止,有哪位大牛能说明一下为什么会这样?

c++

2个回答

EOF需要用文件输入才可以终止,要不就用CTRL+C
例:#include
#include
int main()
{
using namespace std;
char ch;
int count = 0;
freopen("sample.in", "r", stdin);

freopen("sample.out", "w", stdout);

cout << "Enter a sentence : ";
ch=cin.get();
while (ch!=EOF)
count++,ch=cin.get();
cout << "The last ch is: " << ch << endl;
cout << "You have entered " << count << " chars." << endl;
fclose(stdin);

fclose(stdout);
return 0;
}
按照你程序意思,想要输出最后一个字符
然而只有读了EOF判断完了才可以输出
所以"The last ch is:
后面是空的
你自己改一下,加一个char类型,就可以实现目的
(用文件时不要打回车)
滑稽.opj____________________________________

char ch;
int count = 0;

cout << "Enter a sentence : ";
while (**(ch=cin.get())**!=EOF) 这里要括号。
count++;

cout << "The last ch is: " << ch << endl;
cout << "You have entered " << count << " chars." << endl;

return 0;

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
全局重载后的new与cin连用为什么可能进入死锁状态
在读https://blog.csdn.net/zxx910509/article/details/64905107 不理解第二个红标题里函数说明中的一句话。 请看下文 ``` #include <stdio.h> #include<stdlib.h> void *operator new(size_t sz) { printf("operator new:%d Bytes\n",sz); void *m=malloc(sz); if(!m) puts("out of memory"); return m; } void operator delete(void *m) { puts("operator delete"); free(m); } class S { int i[100]; public: S(){puts("S:S()");} ~S(){puts("~S::S()");} }; int main( ) { puts("(1)Creating & Destroying an int"); int *p=new int(47);//输出数据4,因为int后的()用于初始化 delete p; puts("(2)Creating & Destroying an S"); S *s=new S;//输出400,因为有一个元素个数为100的int整型数组 delete s; puts("(3)Creating & Destroying S[3]"); S *sa=new S[3];//输出1204,因为有三个类型为S的对象,重载后new函数返回值必为一个长度大于1200的指针 delete []sa; return 0; } ``` 函数说明: 使用printf()和puts()而不是iostream,是因为创建一个iostream对象时(像全局的cin/cout/cerr),它们调用new去分配内存。用printf()不会进入死锁状态,因为它不会调用new来初始化自身。 在说明里说用cin和cout可能会进入死锁状态,是怎么进入的? 大佬们教教小弟,不懂啊
mac系统下cin 输入出错的问题
在mac下用Xcode 5.0.2练习c++。碰到一个问题,困扰我一整天了。代码如下: #include <iostream> #include <string> using namespace std; int main() { double x; string dummy; while (true) { cin>>x; if (cin.fail()) { cout<< "fail, and dummy is "; cin.clear(); cin >> dummy; cout << dummy << endl; } else { cout << "input number is " << x << endl; } } return 0; } 输入 a 输出是 fail, and dummy is 从结果来看,cin好像把a吞掉了,没有被读进dummy中,但是我查资料发现cin如果读取的类型不匹配,是会存在缓冲区里等待下次读取的,也就是说,输入 a,输出应该是 fail, and dummy is a 类似的代码在 vs2012下就是正确的。 或者,输入字母g,结果就正确了,输出是fail, and dummy is g,蛋疼的我试了下,a到f都不正确,g正确。好奇怪! 或者把double类型改为int,则输入a,结果也正确。 我在命令行下用clang++编译,问题依旧,用g++编译,问题依旧。 为什么会这样呢?是不是mac系统的问题?非常希望了解的前辈解答一下。
cin.get()和ch=cin.get的使用
在c++中,什么情况下使用cin.get()和ch=cin.get,什么情况下直接使用cin,求解答!
cin是否有数组边界检查?
比如: char Data[10]; cin>>Data; cin可以输入10个以上的字符吗,会不会只读前10个?
为什么用scanf就会出错?而cin不会?
#include <iostream> int GetInt() { using namespace std; int x; cin>>x; //scanf("%d",x)为什么会出错? return x; } int main() { printf("%d\n",GetInt()); return 0; }
关于cin.get()的疑问求教
![图片说明](https://img-ask.csdn.net/upload/201909/14/1568473018_746014.png) 为什么cin.get()了之后还是会少了一个“5”
cin.get()这里是什么意思
unsigned int size = 0;//初始化车子的数量 cout << "How many cars do you wish to catalog? "; cin >> size;//输入车辆 cin.get();//??? //等价于 struct car* pcar = new struct car[size]; car* pcar = new car[size];//结构数组,根据输入的车辆来改变,数组 for (unsigned int i = 0; i < size; i++) { cout << "Car #" << i + 1 << ":" << endl; cout << "Please enter the make: "; getline(cin, pcar[i].company); cout << "Please enter the year make: "; cin >> pcar[i].pro_year; cin.get(); }
c++中cin,cin.getline()中换行符问题
代码1、 int a; cin>>a; char b[10]; cin>>b; 代码2、 int a; cin>>a; char b[10]; cin.getline(b,10); 我看书上说cin 见到换行符结束然后换行符留在了输入序列中,那为什么为什么代码1不会出现问题,而代码2会出现问题?
C++中cin.get的一个问题
新人对缓存区还是不怎么了解,想请教一下循环中那个cin.get()读取的到底是什么? 我本来以为是getline或者cin输入完会在缓存区留下一个回车,用cin.get()把回车给读取掉。可是我后来试着把getline或者cin注释掉,并且注释掉循环中的cin.get,发现循环都能正常运行,可一旦把这两个都留着只注释掉cin.get,程序运行的就不正常了。 希望有懂的前辈指点一下,谢谢了。 #include "stdafx.h" #include <iostream> #include <string> #include <vector> const int NUM = 5; int main() { using std::vector; using std::string; using std::cin; using std::cout; vector<int> ratings(NUM); vector<string> titles(NUM); cout << "you will do exactly as told. you willenter\n" << NUM << " book titles and your ratings (0-10).\n"; int i, A; for (i = 0; i < NUM; i++) { cout << "enter title #" << i + 1 << ": "; getline(cin, titles[i]); cout << "enter your rating : "; cin >> ratings[i]; cin.get();//就是这个不是很懂 } cout << "thank you. you entered the following:\n" << "rating\tBook\n"; for (i = 0; i < NUM; i++) { cout << ratings[i] << "\t" << titles[i] << std::endl; } cin.get(); return 0; }
关于在Cmake下vs2017和vtk的配置问题
准备学习vtk,利用cmake安装vtk8.2.0成功,编译也成功了。 可是创建的第一个工程就出现了问题 看了一位博主的教程,首先新建了一个名为CMakeLists.txt的记事本文件,内容如下: ``` cmake_minimum_required(VERSION 2.8) project(RenderCylinder) find_package(VTK REQUIRED) include(${VTK_USE_FILE}) add_executable(${PROJECT_NAME} RenderCylinder.cpp) target_link_libraries(${PROJECT_NAME} ${VTK_LIBRARIES}) ``` 随后创建了一个名为CMakeLists.cpp的文件,内容如下: ``` #include"vtkRenderWindow.h" #include"vtkSmartPointer.h" int main() { vtkSmartPointer<vtkRenderWindow> renWin= vtkSmartPointer<vtkRenderWindow>::New(); renWin->Render(); std::cin.get(); return 0; } ``` 利用cmake进行编译报错如下: ![图片说明](https://img-ask.csdn.net/upload/202002/14/1581676367_39902.png) 尝试了论坛上许多方法,依旧不行。折腾了一天多,对一个小白来说实在太难受了,恳请各位提供解决想法,不胜感激!
关于C++输入cin的问题,下面的程序,如果输入一个字符,那就将陷入死循环,为什么?
#include <iostream.h> main() { int i; while(i!=-1) { cout<<"i=" cin>>i; cout<<endl; } } 上面的程序,如果输入的不合法,比如输入一个字符,那就将陷入死循环。解决的办法 有个一,把cin>>i;语句移到判断循环的语句,那么输入的如果是不合法的变量,他将跳出循环 。
c++中cin.getline()和getline()的参数分别都是什么意思呀?
顺便说一下两个函数的区别吧 char x[20]; cin.getline(x,20); 这里的参数,想指定操作的字符串,20指定输入的长度,这样理解对吗 然后参数有没有其他的情况都代表什么 string y; getline(cin,y) 这里的cin是什么意思 然后参数有没有可能是其他的,那是参数都代表什么; 还有cin.getline()的参数可以是string类型吗,还是只能是char型数组
cin.get(ch)和ch=cin.get()的相关问题
![图片说明](https://img-ask.csdn.net/upload/201910/15/1571097366_253760.png) 输入a,让第一个便是结束符,输出结果为![图片说明](https://img-ask.csdn.net/upload/201910/15/1571097444_704294.png) 把ch2=cin.get()改为cin.get(ch2),一样输入a,输出结果却是这样,是什么原理让这两者输出结果不一样,求解答![图片说明](https://img-ask.csdn.net/upload/201910/15/1571097564_676233.png) 还有下图中的赋值给参数ch和函数返回值赋值给ch,这又有什么区别,是这个引起以上的不同吗?![图片说明](https://img-ask.csdn.net/upload/201910/15/1571097704_550242.png) 望大佬为小白解惑,感激不尽!
C++的cin怎么输入一个矩阵?
例如输入: 1 2 3 4 5 6 怎么用cin输入,最好能保存为vector<vector<int>>类型的二维向量。
cin.getline()的一个问题
用C++: char str[6]; int n; cin.getline(str,6); cin>>num; 然后键入push 1回车,str为"push ",但是num却接收不到数值是什么原因?
PTA|L2-022 链表重排 求大佬点波拨一下哪里错了
给定一个单链表 L1 ​​ →L ​2 ​​ →⋯→L ​n−1 ​​ →L ​n ​​ ,请编写程序将链表重新排列为 L ​n ​​ →L ​1 ​​ →L ​n−1 ​​ →L ​2 ​​ →⋯。例如:给定L为1→2→3→4→5→6,则输出应该为6→1→5→2→4→3。 输入格式: 每个输入包含1个测试用例。每个测试用例第1行给出第1个结点的地址和结点总个数,即正整数N (≤10 ​5 ​​ )。结点的地址是5位非负整数,NULL地址用−1表示。 接下来有N行,每行格式为: Address Data Next 其中Address是结点地址;Data是该结点保存的数据,为不超过10 ​5 ​​ 的正整数;Next是下一结点的地址。题目保证给出的链表上至少有两个结点。 输出格式: 对每个测试用例,顺序输出重排后的结果链表,其上每个结点占一行,格式与输入相同。 输入样例: 00100 6 00000 4 99999 00100 1 12309 68237 6 -1 33218 3 00000 99999 5 68237 12309 2 33218 输出样例: 68237 6 00100 00100 1 99999 99999 5 12309 12309 2 00000 00000 4 33218 33218 3 -1 结果如下 ![图片说明](https://img-ask.csdn.net/upload/202002/17/1581940136_268564.jpg) ``` #include <iostream> #include <cstring> using namespace std; const int maxn=1e5; int _data[maxn]; int _next[maxn]; int main(){ int add,n; cin>>add>>n; memset(_next, -1, sizeof(_next)); for(int i=1;i<=n;i++){ int id,data,next; cin>>id>>data>>next; _data[id]=data; _next[id]=next; } int flag=1; int rank[n+1];//第四组测试用例会越界,但改大是答案错误 for(int i=add;i!=-1;i=_next[i]){ rank[flag++]=i; } if(n%2!=0&&n>=3){ int temp=(n-1)/2; for(int i=1;i<=temp;i++){ printf("%05d %d %05d\n",rank[n-i+1],_data[rank[n-i+1]],rank[i]); printf("%05d %d %05d\n",rank[i],_data[rank[i]],rank[n-i]); } temp=(n+1)/2; printf("%05d %d %d",rank[temp],_data[rank[temp]],-1); } else if(n==1){ printf("%05d %d %d",rank[1],_data[rank[1]],-1); } else if(n==2){ printf("%05d %d %05d\n",rank[2],_data[rank[2]],rank[1]); printf("%05d %d %d",rank[1],_data[rank[1]],-1); } else { int temp=n/2; for(int i=1;i<temp;i++){ printf("%05d %d %05d\n",rank[n-i+1],_data[rank[n-i+1]],rank[i]); printf("%05d %d %05d\n",rank[i],_data[rank[i]],rank[n-i]); } printf("%05d %d %05d\n",rank[temp+1],_data[rank[temp+1]],rank[temp]); printf("%05d %d %d",rank[temp],_data[rank[temp]],-1); } } ``` ``` ```
c++ 检测到输入eof之后为什么不执行后续的程序了?
一个很简单的程序 一直输入直到检测到EOF (Ctrl+z)就输出count 可是实际运行的时候程序直接退出了 并没有输出count 为什么呢? #include<iostream> int main() { using namespace std; char ch; int count = 0; cin.get(ch); while(cin.fail() == false) { cout << ch; ++count; cin.get(ch); } cout <<count <<"characters read\n"; // cin.get(); // cin.get(); return 0; }
while里面的值不因为循环里的cin而改变吗?
这个程序为什么star>20后还要循环啊 #include<iostream> using namespace std; int main() { int space, star = 0; while (star < 20) { cout << "输入第一行*个数:"; cin >> star; for (space = 0; star > 0; star -= 2, space++) { for (int i = 1; i <= space; i++) cout << ' '; for (int i = 1; i <= star; i++) cout << '*'; cout << "\n"; } } system("pause"); return 0; } ![图片说明](https://img-ask.csdn.net/upload/201910/09/1570635949_580087.png) 但是多定义n作为while(n<20) 在 读取了star后 令 n=star 运行又正常了 #include<iostream> using namespace std; int main() { int space, n = 0,star; while (n < 20) { cout << "输入第一行*个数:"; cin >> star; n = star;
C++输入 为什么要加cin.get()才行
struct pizza { char band[20]; int weight; int radius; }; int main() { pizza *exp = new pizza; cout << "radius: "; cin >> exp->radius; ** cin.get();** cout << "bands: "; cin.get(exp->band,20); cout << "weight: "; cin >> exp->weight; cout << exp->band << " " << exp->weight << " " << exp->radius <<endl; delete exp; return 0; } 为什么要加cin.get()才行
终于明白阿里百度这样的大公司,为什么面试经常拿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怎么样了,所以今天尽量客观
程序员一般通过什么途径接私活?
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外
大学四年自学走来,这些珍藏的「实用工具/学习网站」我全贡献出来了
知乎高赞:文中列举了互联网一线大厂程序员都在用的工具集合,涉及面非常广,小白和老手都可以进来看看,或许有新收获。
《阿里巴巴开发手册》读书笔记-编程规约
Java编程规约命名风格 命名风格 类名使用UpperCamelCase风格 方法名,参数名,成员变量,局部变量都统一使用lowerCamelcase风格 常量命名全部大写,单词间用下划线隔开, 力求语义表达完整清楚,不要嫌名字长 ...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
你知道的越多,你不知道的越多 点赞再看,养成习惯 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试点思维导图,也整理了很多我的文档,欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。 前前言 为啥今天有个前前言呢? 因为你们的丙丙啊,昨天有牌面了哟,直接被微信官方推荐,知乎推荐,也就仅仅是还行吧(心里乐开花)
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 获取数据
爬虫的工作分为四步: 1.获取数据。爬虫程序会根据我们提供的网址,向服务器发起请求,然后返回数据。 2.解析数据。爬虫程序会把服务器返回的数据解析成我们能读懂的格式。 3.提取数据。爬虫程序再从中提取出我们需要的数据。 4.储存数据。爬虫程序把这些有用的数据保存起来,便于你日后的使用和分析。 这一篇的内容就是:获取数据。 首先,我们将会利用一个强大的库——requests来获取数据。 在电脑上安装
Python绘图,圣诞树,花,爱心 | Turtle篇
1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle() circle.shape('circle') circle.color('red') circle.speed('fastest') circle.up() square = turtle.Turtle()
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 更多有趣分析教程,扫描下方二维码关注vx公号「裸睡的猪」 即可查看! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布
听说想当黑客的都玩过这个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的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
别低估自己的直觉,也别高估自己的智商
所有群全部吵翻天,朋友圈全部沦陷,公众号疯狂转发。这两周没怎么发原创,只发新闻,可能有人注意到了。我不是懒,是文章写了却没发,因为大家的关注力始终在这次的疫情上面,发了也没人看。当然,我...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。   再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。   下文是原回答,希望能对你能有所启发。   如果我说,这个世界上人真的分三六九等,
为什么听过很多道理,依然过不好这一生?
记录学习笔记是一个重要的习惯,不希望学习过的东西成为过眼云烟。做总结的同时也是一次复盘思考的过程。 本文是根据阅读得到 App上《万维钢·精英日课》部分文章后所做的一点笔记和思考。学习是一个系统的过程,思维模型的建立需要相对完整的学习和思考过程。以下观点是在碎片化阅读后总结的一点心得总结。
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合
如何优雅地打印一个Java对象?
你好呀,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员。虽然已经写了十多年的 Java 代码,但仍然觉得自己是个菜鸟(请允许我惭愧一下)。 在一个月黑风高的夜晚,我思前想后,觉得再也不能这么蹉跎下去了。于是痛下决心,准备通过输出的方式倒逼输入,以此来修炼自己的内功,从而进阶成为一名真正意义上的大神。与此同时,希望这些文章能够帮助到更多的读者,让大家在学习的路上不再寂寞、空虚和冷。 ...
雷火神山直播超两亿,Web播放器事件监听是怎么实现的?
Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播。在视频业务大数据平台中,播放数据的统计分析非常重要,所以Web播放器在使用过程中,需要对其内部的数据进行收集并上报至服务端,此时,就需要对发生在其内部的一些播放行为进行事件监听。 那么Web播放器事件监听是怎么实现的呢? 01 监听事件明细表 名
3万字总结,Mysql优化之精髓
本文知识点较多,篇幅较长,请耐心学习 MySQL已经成为时下关系型数据库产品的中坚力量,备受互联网大厂的青睐,出门面试想进BAT,想拿高工资,不会点MySQL优化知识,拿offer的成功率会大大下降。 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 设计
Linux 命令(122)—— watch 命令
1.命令简介 2.命令格式 3.选项说明 4.常用示例 参考文献 [1] watch(1) manual
Linux 命令(121)—— cal 命令
1.命令简介 2.命令格式 3.选项说明 4.常用示例 参考文献 [1] cal(1) manual
记jsp+servlet+jdbc实现的新闻管理系统
1.工具:eclipse+SQLyog 2.介绍:实现的内容就是显示新闻的基本信息,然后一个增删改查的操作。 3.数据库表设计 列名 中文名称 数据类型 长度 非空 newsId 文章ID int 11 √ newsTitle 文章标题 varchar 20 √ newsContent 文章内容 text newsStatus 是否审核 varchar 10 news...
Python新型冠状病毒疫情数据自动爬取+统计+发送报告+数据屏幕(三)发送篇
今天介绍的项目是使用 Itchat 发送统计报告 项目功能设计: 定时爬取疫情数据存入Mysql 进行数据分析制作疫情报告 使用itchat给亲人朋友发送分析报告(本文) 基于Django做数据屏幕 使用Tableau做数据分析 来看看最终效果 目前已经完成,预计2月12日前更新 使用 itchat 发送数据统计报告 itchat 是一个基于 web微信的一个框架,但微信官方并不允
相关热词 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数 c#日期精确到分钟 c#自定义异常必须继承 c#查表并返回值 c# 动态 表达式树 c# 监控方法耗时 c# listbox c#chart显示滚动条
立即提问

相似问题