c++判断一个字符串的内容是否是16进制字符串

embedded/2024/9/25 14:36:25/
  • 操作系统:ubuntu22.04
  • IDE:Visual Studio Code
  • 编程语言:C++11

功能描述

要判断一个字符串是否为16进制字符串,可以遍历字符串中的每个字符,并检查它们是否都是合法的16进制字符(即0-9和A-F或a-f)。

代码示例


#include <cctype>
#include <iomanip>
#include <iostream>
#include <string>bool isHexChar( char c )
{return ( c >= '0' && c <= '9' ) || ( c >= 'A' && c <= 'F' ) || ( c >= 'a' && c <= 'f' );
}bool isHexString( const std::string& str )
{for ( char c : str ){if ( !isHexChar( c ) ){return false;}}return true;
}int main()
{std::string testStrings[] = { "0103040535", "ABCDEFabcdef", "0123456789", "GHIJKLghijkl", "0x123", "0103040535G" };for ( const std::string& s : testStrings ){std::cout << "'" << s << "' is a hex string: " << std::boolalpha << isHexString( s ) << std::endl;}return 0;
}

运行结果

'0103040535' is a hex string: true
'ABCDEFabcdef' is a hex string: true
'0123456789' is a hex string: true
'GHIJKLghijkl' is a hex string: false
'0x123' is a hex string: false
'0103040535G' is a hex string: false

注:
在C++中,std::boolalpha 是 头文件中的一个操纵符,用于将布尔值以 true 或 false 的形式输出。如果你遇到了 ‘boolalpha’ is not a member of ‘std’ 的错误,那是因为你没有包含 头文件。


http://www.ppmy.cn/embedded/116661.html

相关文章

fastadmin前端切换成英文,后台中文,修改JS文件

找到JS文件&#xff0c;修改配置&#xff0c;最底下部分 public\assets\js\require-frontend.js require([jquery, bootstrap], function ($, undefined) {//初始配置var Config requirejs.s.contexts._.config.config;//将Config渲染到全局window.Config Config;// 配置语言…

php中打印函数

在PHP中&#xff0c;打印函数主要用于输出或显示数据。常用的打印函数包括&#xff1a; 1.echo- 可以输出一个或多个字符串。 echo "Hello, World!"; echo "Hello", " ", "World!"; 2.print - 功能与echo相似&#xff0c;但print只能…

基于AI+多技术融合在流域生态系统服务评价、水文水生态分析、碳收支、气候变化影响、制图等领域中的实践应用

流域生态系统服务在环境保护与资源管理中具有不可替代的重要性。随着全球气候变化和人类活动对自然环境的压力日益增大&#xff0c;流域生态系统的稳定性和健康状况面临严峻挑战。水资源短缺、洪水频发、水质污染、生物多样性减少等问题&#xff0c;正在威胁流域内及其下游区域…

C++第2课——取余运算符的应用、浮点型和字符型(含视频讲解)

文章目录 1、课程笔记2、课程视频 1、课程笔记 /* #include<iostream> using namespace std; int main(){//cout<<"hello,world!";//运算符的优先级 () * / % -// 3/2 1...1 3%21 5%32 3%53 -3%2-1 3%-21//cout<<6/4%2;//int 向下取整6…

时间序列数据可视化

#时间序列可视化 #离散数据的时间序列可视化 import numpy as np import pandas as pdts pd.Series(np.random.randn(1000), indexpd.date_range(1/1/2000, periods1000)) ts ts.cumsum() ts.plot() #%% #连续数据的时间序列可视化 import matplotlib.pyplot as plt df pd.D…

小程序服务零工市场

零工市场小程序有着信息发布、岗位匹配、线上接单、零工人员保障险参保、技能培训、费用结算、完工确认、服务评价、纠纷调解等功能&#xff0c;为求职者和雇主搭建一座高效、便捷、精准的对接桥梁。 用工单位通过小程序的“雇主找人”&#xff0c;发布招聘信息&#xff0c;找到…

maven报错:Unresolved plugin ‘org.apache.maven.pluginsmaven-resources-plugin‘

maven报错&#xff1a;Unresolved plugin: ‘org.apache.maven.plugins:maven-resources-plugin‘ 最近初学java&#xff0c;这里记录一下报错出现的原因以及解决办法 问题示例 如图所示&#xff0c;就是在创建一个项目之后对应插件的部分有爆红 问题出现的原因 简单来说就…

基于springboot在线点餐系统

基于springbootvue实现的点餐系统 &#xff08;源码L文ppt&#xff09;4-077 第4章 系统设计 4.1 总体功能设计 一般个人用户和管理者都需要登录才能进入点餐系统&#xff0c;使用者登录时会在后台判断使用的权限类型&#xff0c;包括一般使用者和管理者,一般使用…