Visual studio 中win32控制台应用程序和空项目有什么却别?

如果你不知道有什么区别,可以先运行一下,这些代码。

http://ask.csdn.net/questions/187617

可以正常的在win32控制台应用程序建的工程上运行。
在空项目,就会有帖子上的错误。
图片说明

下边回答的空项目的图片传错了,应该是:

图片说明

8个回答

空项目没有默认包含和使用的库,链接器也没有配置为控制台,这些都需要手工设置。
但是,你完全可以通过创建空项目,并且手工设置,达到和创建任何一种项目,包括mfc atl等非常复杂的项目一样的效果。只是需要很多时间而已。

空项目没有替你包含i一些编译器自己的头文件,宏定义等,如果你用到了,就要自己添加。

是不是makefile,编译选项之类的东西不一样。

win32控制台应用程序使用了模板,开发编译只能运行在DOS窗口下。
空模板,能发挥自由,但是每一行代码必须一个一个键入。要对机制非常清楚。

区别是有的

当然不是控制台的程序,已经有一个空的入口函数,即至少有一个 cpp 文件。而空工程,则是没有什么与源代码相关的文件。
## 直接上图

控制台

图片说明

空项目

图片说明

是不是makefile,编译选项之类的东西不一样。

可以在win32创建过程中把空项目选项勾上,这样就一样了

其实就简单的方法就是实际建两个这样的工程,然后对比一下,就知道两者的区别。
控制台的程序,已经有一个空的入口函数,即至少有一个 cpp 文件。而空工程,则是没有什么与源代码相关的文件。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
visual studio2015 直接运行控制台程序打不开cmd.exe
![图片说明](https://img-ask.csdn.net/upload/201802/15/1518686907_142326.png)visual studio2015直接点运行控制台程序,显示打不开cmd.exe。就最简单的win32控制台程序,调试时可以打开,但是点Ctrl+F5会出现无法启动程序 C:\Windows\System32\cmd.exe,系统找不到指定文件。试过修复,而且电脑有cmd,在cmd里面能运行生成的.exe,但是VS显示启动不了cmd.exe。
visual studio 2015中新建一个C程序的项目遇到的问题
利用visual studio 2015新建一个C程序项目的时候,点击“win32控制台应用程序”,新建项目的框只是闪烁一下,没有什么反应。
visual studio安装问题 无法打开win32控制台和空项目
![图片说明](https://img-ask.csdn.net/upload/201610/12/1476267550_781264.png) 点击之后没有任何反应,也没有提示信息。![图片说明](https://img-ask.csdn.net/upload/201610/13/1476357664_246699.png)安装了VC++支持
visual studio2012 直接运行控制台程序打不开cmd.exe
就最简单的win32控制台程序,调试时可以打开,但是会报这些: “ConsoleApplication1.exe”(Win32): 已加载“E:\VSProjects\ConsoleApplication1\Debug\ConsoleApplication1.exe”。已加载符号。 “ConsoleApplication1.exe”(Win32): 已加载“C:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件。 “ConsoleApplication1.exe”(Win32): 已加载“C:\Windows\SysWOW64\kernel32.dll”。无法查找或打开 PDB 文件。 “ConsoleApplication1.exe”(Win32): 已加载“C:\Windows\SysWOW64\KernelBase.dll”。无法查找或打开 PDB 文件。 “ConsoleApplication1.exe”(Win32): 已加载“C:\Windows\SysWOW64\msvcr110d.dll”。已加载符号。 线程 0x2064 已退出,返回值为 -1073741510 (0xc000013a)。 程序“[4924] ConsoleApplication1.exe”已退出,返回值为 -1073741510 (0xc000013a)。 如果直接运行就弹出对话框:无法启动程序"C:\Windows\system32\cmd.exe".系统找不到指定的文件。
VS2015中如何添加WIN32控制台程序?添加项目里都没有WIN32这个选项.
![![图片说明](https://img-ask.csdn.net/upload/201508/25/1440500917_448202.jpg)图片说明](https://img-ask.csdn.net/upload/201508/25/1440500867_836572.jpg)
visual studio 2015c++项目无法创建
用visual studio 2015c++创建win32控制台程序创建不了。提示缺少根元素![图片](https://img-ask.csdn.net/upload/201703/23/1490245726_329389.png)
visual studio 编译多个文件
用visual studio 建立了一个win32控制台应用程序(项目),该工程包含多个头文件(.h文件)、源文件(.cpp文件),程序没有问题,如果将程序全写在一个文件(此文件会很大)中当然编译过程十分简单,也能编译通过,但是如果写成几个头文件和源文件,该 如何进行编译呢?请大神详细说明,可以举例。谢谢!!!
在Linux下写好的更新程序,怎么在visual studio里面运行啊
如题,本人以前长在linux下编程,现在写好了更新的程序,但是有用到socket,在弄到studio2010里的时候报错说找不到各种支持socket的头文件例如socket.h unistd.h,由于第一次使用这个软件不懂啊,请大神指点,对了,我是新建项目选的win32控制台,然后选空项目,再添加.c .h文件,结果运行报错找不到头文件,但是我写的hello word能运行啊,好费解![图片说明](http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/18.gif)![图片说明](http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/18.gif)求救
vs2013的win32控制台程序+海康威视sdk,一直出现error LNK2019的问题
``` #include <stdio.h> #include <iostream> #include "Windows.h" #include "HCNetSDK.h" #include "plaympeg4.h" #include <time.h> using namespace std; typedef HWND(WINAPI *PROCGETCONSOLEWINDOW)(); PROCGETCONSOLEWINDOW ConsoleWindow; LONG lPort; //全局的播放库 port 号 void CALLBACK g_RealDataCallBack_V30(LONG lRealHandle, DWORD dwDataType, BYTE *pBuffer, DWORD dwBufSize, void* dwUser) { HWND hWnd = ConsoleWindow(); switch (dwDataType) { case NET_DVR_SYSHEAD: //系统头 if (!PlayM4_GetPort(&lPort)) //获取播放库未使用的通道号 { break; } //m_iPort = lPort; //第一次回调的是系统头,将获取的播放库 port 号赋值给全局 port,下次回调数据时即使用此 port 号播放 if (dwBufSize > 0) { if (!PlayM4_SetStreamOpenMode(lPort, STREAME_REALTIME)) //设置实时流播放模式 { break; } if (!PlayM4_OpenStream(lPort, pBuffer, dwBufSize, 1024 * 1024)) //打开流接口 { break; } if (!PlayM4_Play(lPort, hWnd)) //播放开始 { break; } } break; case NET_DVR_STREAMDATA: //码流数据 if (dwBufSize > 0 && lPort != -1) { if (!PlayM4_InputData(lPort, pBuffer, dwBufSize)) { break; } } break; default: //其他数据 if (dwBufSize > 0 && lPort != -1) { if (!PlayM4_InputData(lPort, pBuffer, dwBufSize)) { break; } } break; } } void CALLBACK g_ExceptionCallBack(DWORD dwType, LONG lUserID, LONG lHandle, void *pUser) { char tempbuf[256] = { 0 }; switch (dwType) { case EXCEPTION_RECONNECT: //预览时重连 printf("----------reconnect--------%d\n", time(NULL)); break; default: break; } } void main() { //--------------------------------------- // 初始化 NET_DVR_Init(); //设置连接时间与重连时间 NET_DVR_SetConnectTime(2000, 1); NET_DVR_SetReconnect(10000, true); //--------------------------------------- // 获取控制台窗口句柄 HWND hWnd = ::FindWindow("ConsoleWindowClass",NULL); //--------------------------------------- // 注册设备 LONG lUserID; NET_DVR_DEVICEINFO_V30 struDeviceInfo; lUserID = NET_DVR_Login_V30("172.0.0.100", 8000, "admin", "12345", &struDeviceInfo); if (lUserID < 0) { printf("Login error, %d\n", NET_DVR_GetLastError()); NET_DVR_Cleanup(); return; } //--------------------------------------- //设置异常消息回调函数 NET_DVR_SetExceptionCallBack_V30(0, NULL, g_ExceptionCallBack, NULL); //--------------------------------------- //启动预览并设置回调数据流 LONG lRealPlayHandle; NET_DVR_PREVIEWINFO struPlayInfo = { 0 }; struPlayInfo.hPlayWnd = hWnd; //需要 SDK 解码时句柄设为有效值,仅取流不解码时可设为空 struPlayInfo.lChannel = 1; //预览通道号 struPlayInfo.dwStreamType = 0; //0-主码流,1-子码流,2-码流 3,3-码流 4,以此类推 struPlayInfo.dwLinkMode = 0; //0- TCP 方式,1- UDP 方式,2- 多播方式,3- RTP 方式,4-RTP/RTSP,5-RSTP/HTTP struPlayInfo.bBlocked = 1; //0- 非阻塞取流,1- 阻塞取流 lRealPlayHandle = NET_DVR_RealPlay_V40(lUserID, &struPlayInfo, g_RealDataCallBack_V30, NULL); if (lRealPlayHandle < 0) { printf("NET_DVR_RealPlay_V40 error\n"); NET_DVR_Logout(lUserID); NET_DVR_Cleanup(); return; } Sleep(10000); //--------------------------------------- //关闭预览 NET_DVR_StopRealPlay(lRealPlayHandle); //注销用户 NET_DVR_Logout(lUserID); NET_DVR_Cleanup(); return; } ``` 错误列表为: 错误 14 error LNK2019: 无法解析的外部符号 __imp__PlayM4_SetStreamOpenMode@8,该符号在函数 "void __stdcall g_RealDataCallBack_V30(long,unsigned long,unsigned char *,unsigned long,void *)" (?g_RealDataCallBack_V30@@YGXJKPAEKPAX@Z) 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 11 error LNK2019: 无法解析的外部符号 __imp__PlayM4_Play@8,该符号在函数 "void __stdcall g_RealDataCallBack_V30(long,unsigned long,unsigned char *,unsigned long,void *)" (?g_RealDataCallBack_V30@@YGXJKPAEKPAX@Z) 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 12 error LNK2019: 无法解析的外部符号 __imp__PlayM4_OpenStream@16,该符号在函数 "void __stdcall g_RealDataCallBack_V30(long,unsigned long,unsigned char *,unsigned long,void *)" (?g_RealDataCallBack_V30@@YGXJKPAEKPAX@Z) 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 13 error LNK2019: 无法解析的外部符号 __imp__PlayM4_InputData@12,该符号在函数 "void __stdcall g_RealDataCallBack_V30(long,unsigned long,unsigned char *,unsigned long,void *)" (?g_RealDataCallBack_V30@@YGXJKPAEKPAX@Z) 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 15 error LNK2019: 无法解析的外部符号 __imp__PlayM4_GetPort@4,该符号在函数 "void __stdcall g_RealDataCallBack_V30(long,unsigned long,unsigned char *,unsigned long,void *)" (?g_RealDataCallBack_V30@@YGXJKPAEKPAX@Z) 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 9 error LNK2019: 无法解析的外部符号 __imp__NET_DVR_StopRealPlay@4,该符号在函数 _main 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 5 error LNK2019: 无法解析的外部符号 __imp__NET_DVR_SetReconnect@8,该符号在函数 _main 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 3 error LNK2019: 无法解析的外部符号 __imp__NET_DVR_SetExceptionCallBack_V30@16,该符号在函数 _main 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 4 error LNK2019: 无法解析的外部符号 __imp__NET_DVR_SetConnectTime@8,该符号在函数 _main 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 10 error LNK2019: 无法解析的外部符号 __imp__NET_DVR_RealPlay_V40@16,该符号在函数 _main 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 7 error LNK2019: 无法解析的外部符号 __imp__NET_DVR_Logout@4,该符号在函数 _main 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 6 error LNK2019: 无法解析的外部符号 __imp__NET_DVR_Login_V30@20,该符号在函数 _main 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 1 error LNK2019: 无法解析的外部符号 __imp__NET_DVR_Init@0,该符号在函数 _main 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 8 error LNK2019: 无法解析的外部符号 __imp__NET_DVR_GetLastError@0,该符号在函数 _main 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 2 error LNK2019: 无法解析的外部符号 __imp__NET_DVR_Cleanup@0,该符号在函数 _main 中被引用 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\catch_video9\源.obj catch_video9 错误 16 error LNK1120: 15 个无法解析的外部命令 C:\Users\Lenovo\documents\visual studio 2013\Projects\catch_video9\Debug\catch_video9.exe catch_video9 其中catch_video9是程序名称…… 求大神指点……在下萌新一枚,很多编程上的知识还有待提高,希望大家可以帮我指出我的错误…… 在此谢谢大家!
请教这段C代码的问题?
为什么没有输出a的值 代码: ``` #include<stdio.h> void main() { int a; a = 1; printf(a); return 0; } ``` 运行结果: ``` “Project2.exe”(Win32): 已加载“C:\Users\jyz_1\source\repos\Project2\Debug\Project2.exe”。已加载符号。 “Project2.exe”(Win32): 已加载“C:\Windows\SysWOW64\ntdll.dll”。 “Project2.exe”(Win32): 已加载“C:\Windows\SysWOW64\kernel32.dll”。 “Project2.exe”(Win32): 已加载“C:\Windows\SysWOW64\KernelBase.dll”。 “Project2.exe”(Win32): 已加载“C:\Windows\SysWOW64\vcruntime140d.dll”。 “Project2.exe”(Win32): 已加载“C:\Windows\SysWOW64\ucrtbased.dll”。 线程 0x4d4 已退出,返回值为 0 (0x0)。 程序“[16512] Project2.exe”已退出,返回值为 0 (0x0)。 ``` 在exe中显示如下: ``` C:\Users\jyz_1\source\repos\Project2\Debug\Project2.exe (进程 16512)已退出,代码为 -1。 要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。 按任意键关闭此窗口. . . ``` 编译器为visual studio2019,请问问题出在何处
win32控制台,生成时显示元素 <SubSystem> 具有无效值“Windows (/SUBSYSTEM:WINDOWS)”。 是为什么呀,求问 急!
![图片说明](https://img-ask.csdn.net/upload/201911/04/1572870545_359761.png)
关于visual studio 的问题
这里有个关于visual studio的问题,c++语言,win32控制台应用程序,调试不出来,求大神们解答 // 162.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include "iostream" #include "winsock2.h" #include "fstream" #include "process.h" #define PORT 65432 #pragma comment(lib,"ws2_32.lib") using namespace std; char Command[20]; char filename[128]; char fname[128]; ifstream inFile; unsigned int _stdcall GetCommand(void *par); unsigned int _stdcall SendFlie(void *par); int _tmain(int argc, _TCHAR* argv[]) { /******定义相关变量*******/ int sock_server; struct sockaddr_in addr,client_addr; unsigned hThread1,hThread2; unsigned int ThreadID1,ThreadID2; int addr_len=sizeof(struct sockaddr_in); cout<<"请输入要发送的文件名:\n"; cin>>filename; /*******以二进制打开要分发的文件********/ inFile.open(filename,ios::in|ios::binary); if(!inFile.is_open()) { cout<<"Cannot open "<<filename<<endl; return 0; } /*********截取发送给客户端的文件名*********/ int len=strlen(filename); int i=len; while(filename[i]!='\\'&&i>=0) i--; if(i<0) i=0; else i++; int m=0; while(filename[m+i]!='\0') { fname[m]=filename[m+i]; m++; } /*******初始化winsock DLL******/ WSADATA wsaData; WORD wVersionRequested=MAKEWORD(2,2); if(WSAStartup(wVersionRequested,&wsaData)!=0) { cout<<"加载winsock.DLL失败!\n"; return 0; } /******创建套接字*****/ if((sock_server=socket(AF_INET,SOCK_STREAM,0))<0) { cout<<"创建套接字失败!\n"; WSACleanup(); return 0; } /*****设置套接字为非阻塞模式*****/ unsigned long ul=1; int nRet=ioctlsocket(sock_server,FIONBIO,(unsigned long *)&ul); if(nRet==SOCKET_ERROR) { cout<<"设置套接字选项失败!\n"; closesocket(sock_server); WSACleanup(); return 0; } /******绑定IP接口******/ memset((void *)&addr,0,addr_len); addr.sin_family =AF_INET; addr.sin_port =htons(PORT); addr.sin_addr.s_addr=htonl(INADDR_ANY); if(bind(sock_server,(LPSOCKADDR)&addr,sizeof(addr))!=0) { cout<<"绑定IP地址失败!\n"; closesocket(sock_server); WSACleanup(); return 0; } /*****开始监听*****/ if(listen(sock_server,5)!=0) { cout<<"listen函数调用失败!\n"; closesocket(sock_server); WSACleanup(); return 0; } else cout<<"listenning......\n"; /*****启动命令接收线程******/ hThread1=_beginthreadex(NULL,0,GetCommand,(LPVOID)Command,0,&ThreadID1); /******接收并处理客户连接*****/ SOCKET newsock; while(1) { if(strcmp(Command,"close")==0) break; newsock=accept(sock_server,(LPSOCKADDR)&client_addr,&addr_len); if(newsock!=INVALID_SOCKET) { cout<<"connect from "<<inet_ntoa(client_addr.sin_addr)<<endl; hThread2=_beginthreadex(NULL,0,SendFile,(LPVOID)newsock,0,&ThreadID2); } } inFile.close(); closesocket(sock_server); return 0; } unsigned int _stdcall SendFile(void *par) { char buffer[1000]; SOCKET sock=(SOCKET)par; /*****设置套接字为阻塞模式******/ unsigned long ul=0; int nRet=ioctlsocket(sock,FIONBIO,(unsigned long *)&ul); send(sock,(char *)fname,strlen(fname)+1,0); int size=recv(sock,buffer,sizeof(buffer),0); if(strcmp(buffer,"OK")!=0) { cout<<"客户端出错!\n"; closesocket(sock); return 0; } /*****传输文件内容******/ while(!inFile.eof()) { inFile.read(buffer,sizeof(buffer)); //size=inFile.gcount (); send(sock,(char *)buffer,size,0); } cout<<"文件传输结束!\n"; closesocket(sock); return 0; } /******从键盘接收命令的线程函数********/ unsigned int _stdcall GetCommand(void *par) { char *p=(char *)par; while(strcmp(p,"close")!=0) gets(p); return 0; }
小白求问VS2017如何写C++程序
安装了VS2017社区版,下载了C++桌面开发组件,安装后按网上教程找不到win32控制台啊,只有控制台应用程序选项,建立后,写完一直报错,不知问题出在哪
无法解析的外部符号 _WinMain@16
编译环境:visual studio 2010 一直使用这个环境编译,都没出过问题,但自从某一次把某个程序运行了一下之后就显示了如下的错误提示 —————— MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用 1>F:\Projects\程设\expreriment8-3x\Debug\expreriment8-3x.exe : fatal error LNK1120: 1 个无法解析的外部命令 —————— 我新建项目的流程是:win32控制台程序-->控制台应用程序-->空项目-->添加源文件 我试过网上很多人给出的修改项目属性中console变成windows的做法,但是每次修改完之后就会出现 “元素 <SubSystem> 具有无效值 ……” 一类的提醒。 急求各位大神给出可操作的解决办法!十分感谢!
visual stdio 2017 练习c语言出现问题
c和c++初学者,想用这个软件练习一下,图中的前三项都安装了,但找不到教程中说的“win32控制台应用程序”,如果选择其他程序,就会出现如图的情况,求指教。![图片](https://img-ask.csdn.net/upload/201708/23/1503461451_571165.jpg)![图片](https://img-ask.csdn.net/upload/201708/23/1503461499_854115.jpg)![图片](https://img-ask.csdn.net/upload/201708/23/1503461507_737101.jpg)
vs2015中控制台无法显示中文
![图片说明](https://img-ask.csdn.net/upload/201604/24/1461468752_995865.png) win10 换成旧版控制台不知道怎么就可以了 求问题所在
针对.net的病毒?.net程序的问题
Visual studio 2010在win7下运行和调试都出现以下错误,报错内容为:尝试运行项目时出错:未能加载文件或程序集“项目名称”或它的一个依赖项。该模块应包含一个程序集清单。 用visual studio2012也是一样。并且完全新建的一个项目,winform程序,控制台程序,wpf程序,什么代码都没添加,运行时也这样,提示信息为:运行项目时出错:未能加载文件或程序集“项目名称”或它的一个依赖项。该模块应包含一个程序集清单。 通过Beyond Compare进行二进制比较在没出问题时编译好的程序和出问题后的程序,发现主要差别是出问题的程序比原来正常程序多了17KB左右,主要是在程序的最后面有差异,在程序头部也有很少一部分差异。(注意,我比较时是在其他没有问题的电脑上进行的,因为在现在出问题的系统中,把以前编好的程序解压出来,马上就和出问题的程序一样了,无法启动,大小也一样大了,正常程序放在没有问题的电脑上,解压出来是可以正常运行的)我用NET Reflector 对有问题的程序进行反编译时,感觉和正常程序是一样的,没什么问题。 系统我都重装过好几次了,每次都是刚装上时,以前编译的程序(从压缩包中解压出来的),能正常运行,但没过一会,这程序又被破坏了,无法正常启动,错误代码为0xc0000007,如果进行调试便出现最初说的问题,提示信息为:未能加载文件或程序集“项目名称”或它的一个依赖项。该模块应包含一个程序集清单。 我感觉应该是病毒造成的,每次用visual studio生成程序时都提示生成成功,但调试时就出现最初说的问题,我感觉是生成成功了的,只不过刚生成好就被感染了,从而无法启动。我从网上下的一些基于.net的程序也无法启动,症状和这一样,以前编译好的能运行的程序现在也不能运行了。而其它软件,像bootice,diskgenius,beyond compare等好多软件,都能正常运行,感觉是只针对.net的。我用微点和360杀毒软件对全盘进行扫描,但并未查出任何病毒。 在网上搜索,发现有些人也遇到了类似问题,但基本上都未能解决,对于网上能找到的解决办法都试过了,还是未能解决,本人能力也很有限,这个问题都折腾一周多了,目前还未解决,知道的大概就这么多,猜测是针对.net的病毒,望大神能帮助解决,如果在解决问题过程中还需要我提供其他信息,只需说一下,我一定尽力提供。再次先感谢了
VS2017使用时为什么非要加getchar或者system("pause")才能停止
我前段时间使用VS2017时写一段代码如下: #include<stdio.h> int main(void) { printf("aaaaa!\n"); return 0; } 可以直接运行,不闪屏,现在使用直接闪屏,而且还必须添加getchar或者system("pause"); 才能正常运行,很难受,求解怎么才能可以新建工程而不需要getchar或者syste m(“pause”) 以前有个win32控制台程序,现在怎么没有了?真的很烦这东西,希望大神指点迷津!
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
Linux(服务器编程):15---两种高效的事件处理模式(reactor模式、proactor模式)
前言 同步I/O模型通常用于实现Reactor模式 异步I/O模型则用于实现Proactor模式 最后我们会使用同步I/O方式模拟出Proactor模式 一、Reactor模式 Reactor模式特点 它要求主线程(I/O处理单元)只负责监听文件描述符上是否有事件发生,有的话就立即将时间通知工作线程(逻辑单元)。除此之外,主线程不做任何其他实质性的工作 读写数据,接受新的连接,以及处...
为什么要学数据结构?
一、前言 在可视化化程序设计的今天,借助于集成开发环境可以很快地生成程序,程序设计不再是计算机专业人员的专利。很多人认为,只要掌握几种开发工具就可以成为编程高手,其实,这是一种误解。要想成为一个专业的开发人员,至少需要以下三个条件: 1) 能够熟练地选择和设计各种数据结构和算法 2) 至少要能够熟练地掌握一门程序设计语言 3) 熟知所涉及的相关应用领域的知识 其中,后两个条件比较容易实现,而第一个...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n
进程通信方式总结与盘点
​ 进程通信是指进程之间的信息交换。这里需要和进程同步做一下区分,进程同步控制多个进程按一定顺序执行,进程通信是一种手段,而进程同步是目标。从某方面来讲,进程通信可以解决进程同步问题。 ​ 首先回顾下我们前面博文中讲到的信号量机制,为了实现进程的互斥与同步,需要在进程间交换一定的信息,因此信号量机制也可以被归为进程通信的一种方式,但是也被称为低级进程通信,主要原因为: 效率低:一次只可操作少量的...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观
听说了吗?阿里双11作战室竟1根网线都没有
双11不光是购物狂欢节,更是对技术的一次“大考”,对于阿里巴巴企业内部运营的基础保障技术而言,亦是如此。 回溯双11历史,这背后也经历过“小米加步枪”的阶段:作战室从随处是网线,交换机放地上的“一地狼藉”;到如今媲美5G的wifi网速,到现场却看不到一根网线;从当年使用商用AP(无线路由器),让光明顶双11当天断网一分钟,到全部使用阿里自研AP……阿里巴巴企业智能事业部工程师们提供的基础保障...
在阿里,40岁的奋斗姿势
在阿里,40岁的奋斗姿势 在阿里,什么样的年纪可以称为老呢?35岁? 在云网络,有这样一群人,他们的平均年龄接近40,却刚刚开辟职业生涯的第二战场。 他们的奋斗姿势是什么样的呢? 洛神赋 “翩若惊鸿,婉若游龙。荣曜秋菊,华茂春松。髣髴兮若轻云之蔽月,飘飖兮若流风之回雪。远而望之,皎若太阳升朝霞;迫而察之,灼若芙蕖出渌波。” 爱洛神,爱阿里云 2018年,阿里云网络产品部门启动洛神2.0升...
关于研发效能提升的思考
研发效能提升是最近比较热门的一个话题,本人根据这几年的工作心得,做了一些思考总结,由于个人深度有限,暂且抛转引入。 三要素 任何生产力的提升都离不开这三个因素:人、流程和工具,少了其中任何一个因素都无法实现。 人,即思想,也就是古人说的“道”,道不同不相为谋,是制高点,也是高层建筑的基石。 流程,即方法,也是古人说的“法”。研发效能的提升,也就是要提高投入产出比,既要增加产出,也要减...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://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
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆  每天早上8:30推送 作者| Mr.K   编辑| Emma 来源| 技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯
程序员该看的几部电影
##1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?
入职阿里5年,他如何破解“技术债”?
简介: 作者 | 都铎 作为一名技术人,你常常会听到这样的话: “先快速上线” “没时间改” “再缓一缓吧” “以后再解决” “先用临时方案处理” …… 当你埋下的坑越来越多,不知道哪天哪位同学就会踩上一颗雷。特别赞同“人最大的恐惧就是未知,当技术债可说不可见的时候,才是最让人不想解决的时候。” 作为一个程序员,我们反对复制粘贴,但是我们经常会见到相似的代码,相同的二方包,甚至整个代码...
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分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布了 2019年国民经济报告 ,报告中指出:年末中国大陆总人口(包括31个
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
2020年的1月,我辞掉了我的第一份工作
其实,这篇文章,我应该早点写的,毕竟现在已经2月份了。不过一些其它原因,或者是我的惰性、还有一些迷茫的念头,让自己迟迟没有试着写一点东西,记录下,或者说是总结下自己前3年的工作上的经历、学习的过程。 我自己知道的,在写自己的博客方面,我的文笔很一般,非技术类的文章不想去写;另外我又是一个还比较热衷于技术的人,而平常复杂一点的东西,如果想写文章写的清楚点,是需要足够...
别低估自己的直觉,也别高估自己的智商
所有群全部吵翻天,朋友圈全部沦陷,公众号疯狂转发。这两周没怎么发原创,只发新闻,可能有人注意到了。我不是懒,是文章写了却没发,因为大家的关注力始终在这次的疫情上面,发了也没人看。当然,我...
Java坑人面试题系列: 包装类(中级难度)
Java Magazine上面有一个专门坑人的面试题系列: https://blogs.oracle.com/javamagazine/quiz-2。 这些问题的设计宗旨,主要是测试面试者对Java语言的了解程度,而不是为了用弯弯绕绕的手段把面试者搞蒙。 如果你看过往期的问题,就会发现每一个都不简单。 这些试题模拟了认证考试中的一些难题。 而 “中级(intermediate)” 和 “高级(ad
深度学习入门笔记(十八):卷积神经网络(一)
欢迎关注WX公众号:【程序员管小亮】 专栏——深度学习入门笔记 声明 1)该文章整理自网上的大牛和机器学习专家无私奉献的资料,具体引用的资料请看参考文献。 2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除。 3)博主才疏学浅,文中如有不当之处,请各位指出,共同进步,谢谢。 4)此属于第一版本,若有错误,还需继续修正与...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。 再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。 下文是原回答,希望能对你能有所启发。 如果我说,这个世界上人真的分三六九等,...
节后首个工作日,企业们集体开晨会让钉钉挂了
By 超神经场景描述:昨天 2 月 3 日,是大部分城市号召远程工作的第一天,全国有接近 2 亿人在家开始远程办公,钉钉上也有超过 1000 万家企业活跃起来。关键词:十一出行 人脸...
Java基础知识点梳理
Java基础知识点梳理 摘要: 虽然已经在实际工作中经常与java打交道,但是一直没系统地对java这门语言进行梳理和总结,掌握的知识也比较零散。恰好利用这段时间重新认识下java,并对一些常见的语法和知识点做个总结与回顾,一方面为了加深印象,方便后面查阅,一方面为了学好java打下基础。 Java简介 java语言于1995年正式推出,最开始被命名为Oak语言,由James Gosling(詹姆
2020年全新Java学习路线图,含配套视频,学完即为中级Java程序员!!
新的一年来临,突如其来的疫情打破了平静的生活! 在家的你是否很无聊,如果无聊就来学习吧! 世上只有一种投资只赚不赔,那就是学习!!! 传智播客于2020年升级了Java学习线路图,硬核升级,免费放送! 学完你就是中级程序员,能更快一步找到工作! 一、Java基础 JavaSE基础是Java中级程序员的起点,是帮助你从小白到懂得编程的必经之路。 在Java基础板块中有6个子模块的学
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合
你也能看懂的:蒙特卡罗方法
蒙特卡罗方法,也称统计模拟方法,是1940年代中期由于科学技术的发展和电子计算机的发明,而提出的一种以概率统计理论为指导的数值计算方法。是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法 蒙特卡罗方法可以粗略地分成两类:一类是所求解的问题本身具有内在的随机性,借助计算机的运算能力可以直接模拟这种随机的过程。另一种类型是所求解问题可以转化为某种随机分布的特征数,比如随机事件出现的概率,或...
如何优雅地打印一个Java对象?
你好呀,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员。虽然已经写了十多年的 Java 代码,但仍然觉得自己是个菜鸟(请允许我惭愧一下)。 在一个月黑风高的夜晚,我思前想后,觉得再也不能这么蹉跎下去了。于是痛下决心,准备通过输出的方式倒逼输入,以此来修炼自己的内功,从而进阶成为一名真正意义上的大神。与此同时,希望这些文章能够帮助到更多的读者,让大家在学习的路上不再寂寞、空虚和冷。 ...
相关热词 c#开发的dll注册 c#的反射 c# grid绑定数据源 c#多线程怎么循环 c# 鼠标左键 c# char占位符 c# 日期比较 c#16进制转换为int c#用递归求顺序表中最大 c#小型erp源代码
立即提问