Console 显示控制台

1 VC 显示控制台
AllocConsole()

为调用进程分配一个新的控制台。
语法
BOOL WINAPI AllocConsole(void);
参数
此函数没有任何参数。
返回值
如果函数成功,则返回值为非零值。
如果该函数失败,则返回值为零。会设置GetLastError 


freopen()

替换一个流,或者说重新分配文件指针,实现重定向。 
FILE *freopen(const char *filename,const char *type, FILE *stream);
头文件:stdio.h
返回值:如果成功则返回该指向该stream的指针,否则为NULL。
举例:
int main() 
{     
		/* redirect standard output to a file */    
		if (freopen("D:\\OUTPUT.txt", "w", stdout)==NULL)  
		{
				fprintf(stderr, "error redirecting stdout\n");  
		}       
		   
		/* this output will go to a file */    
		printf("This will go into a file.");     
		
		/* close the standard output stream */    
		fclose(stdout);     
		return 0; 
} 

http://bbs.csdn.net/topics/330160646


AllocConsole();
freopen( "CONOUT$","w",stdout );
char strTitle[255] = { 0 };
GetConsoleTitle( strTitle, 255 );
HWND hw = FindWindow( "ConsoleWindowClass", strTitle );
HMENU hMenu = GetSystemMenu( hw, false );
EnableMenuItem( hMenu,SC_CLOSE ,MF_GRAYED|MF_BYCOMMAND|MF_DISABLED );


HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
 SMALL_RECT rc = {0,0,60,40}; // 重置窗口位置和大小
SetConsoleWindowInfo(hOut,true ,&rc);
CloseHandle( hOut );



2 QT 显示到控制台

在.pro文件加上:

CONFIG +=console


 Projects -- Run -- Run in terminal  前面打勾!



你可能感兴趣的:(VC)