设置c语言控制台大小问题

控制台大小设置

手动控制

  • 在输出的控制台设置大小
    1.打开控制台,右键如图任一部分,点击属性(p)
    在这里插入图片描述
    在这里插入图片描述

2.如图中,选择第三栏—布局----去掉勾选之后即可进自行调节在这里插入图片描述
注意:

  • 屏幕缓冲区大小表示在此宽度范围内不会自动换行,如果不想自动换行输出一部分内容,可以设置较大值
  • 窗口大小表示控制台的可见大小,而不会根据内容的大小进行调整,如果屏幕缓冲区宽度大于窗口大小宽度,则控制台底部会出现横向滑动条。

函数控制

1.使用控制台函数

//表示控制台窗口的大小,必须包含头文件:<windows.h>、<stdlib.h>
system("mode con cols=100 lines=50 ");

//API有关窗口信息函数
//获取控制台窗口信息
GetConsoleScreenBufferInfo();
//获取控制台窗口标题
GetConsoleTitle();
//更改指定缓冲区大小
SetConsoleScreenBufferSize();
//设置控制台窗口标题
SetConsoleTitle();
//设置控制台窗口信息
SetConsoleWindowInfo();

举例:

  HANDLE handle_out;	//定义一个句柄
  CONSOLE_SCREEN_BUFFER_INFO scbi;	//定义一个窗口缓冲区信息结构体
  COORD size = {80, 25};		//定义一个坐标结构体
  char strtitle[N];
  handle_out = GetStdHandle(STD_OUTPUT_HANDLE);	//获得标准输出设备句柄
  SetConsoleScreenBufferSize(handle_out, size);	// 重新设置缓冲区大小
  _getch();
  SMALL_RECT rc = {0, 0, 80-1, 25-1};		// 重置窗口位置和大小
  SetConsoleWindowInfo(handle_out, 1, &rc);
  CloseHandle(handle_out);	//关闭标准输出设备句柄

	
/*  其中,SetConsoleScreenBufferSize函数指定新的控制台屏幕缓冲区的大小,以字符列和行为单位。指定的宽度和高度不能小于控制台屏幕缓冲区窗口的宽度和高度。指定的大小也不能小于系统允许的最小大小。这个最低取决于控制台当前的字体大小 (由用户选定)。*/

使用变量法

char chCmd[32];
sprintf(chCmd,"mode con cols=%d lines=%d",height,width);
system(stCmd);

注意: 设置时为了避免冲突,请使用手动或者代码设置,两者不需同时设置。在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值