C++ 判断当前时间是否在指定时间范围内

bool isTimeScale(int startTimeHour, int startTimeMin, int endTimeHour, int endTimeMin)
{
	//将时间都转化为分钟数,利于判断
	uint16_t startMin = startTimeHour * 60 + startTimeMin;
	uint16_t endMin = endTimeHour * 60 + endTimeMin;
	uint16_t curMin = 当前时间;
	//不跨天的情况
	 if (startMin < endMin )
	{
		if (startMin <= curMin && curMin <= endMin)
		{
			return true;
		}
	}
	//跨天的情况
	else if (startMin > endMin)
	{
		if (startMin <= curMin || curMin <= endMin)
		{
			return true;
		}
	}
	return false;
}

 

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
你可以使用顺序表的删除操作来删除指定的一组数据。以下是一个示例代码: ```cpp #include <iostream> using namespace std; const int MAX_SIZE = 100; // 假设顺序表的最大容量为100 struct SeqList { int data[MAX_SIZE]; int length; }; void deleteData(SeqList& list, int start, int end) { if (start < 0 || start >= list.length || end < start || end >= list.length) { cout << "无效的删除范围" << endl; return; } int count = end - start + 1; // 要删除的元素个数 for (int i = end + 1; i < list.length; i++) { list.data[i - count] = list.data[i]; // 后移元素 } list.length -= count; // 更新顺序表长度 } int main() { SeqList list; list.length = 10; for (int i = 0; i < list.length; i++) { list.data[i] = i + 1; // 初始化顺序表 } deleteData(list, 2, 5); // 删除索引2到5的元素 for (int i = 0; i < list.length; i++) { cout << list.data[i] << " "; // 输出结果为 1 2 7 8 9 10 } cout << endl; return 0; } ``` 在上面的代码中,我们定义了一个结构体 `SeqList` 表示顺序表,其中 `data` 数组存储数据,`length` 记录当前顺序表的长度。 函数 `deleteData` 接受三个参数:顺序表 `list`、要删除的起始位置 `start`、要删除的结束位置 `end`。在函数内部,我们首先判断删除范围是否有效,然后通过循环将后面的元素依次前移,并更新顺序表的长度。 在 `main` 函数中,我们创建一个顺序表并初始化,然后调用 `deleteData` 函数删除索引2到5的元素,并输出结果。 注意,这里的删除操作只是将后面的元素逐个前移,而并没有释放内存,如果需要释放内存,可以使用动态分配内存的方式实现顺序表。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值