Arduino - 字符判断函数

2023-11-18

Arduino - 字符判断函数


字符判断函数,虽然在实际编程中可能很少使用到,但是可以作为知识储备,有必要了解一些。这些函数包含在ctype.h当中。

  • Arduino IDE路径:C:\Program Files (x86)\Arduino\hardware\tools\avr\avr\include

int isdigit( int c ):如果c是数字,则返回1,否则返回0。

int isalpha( int c ):如果c是字母,则返回1,否则返回0。

int isalnum( int c ):如果c是数字或字母,则返回1,否则返回0。

int isxdigit( int c ):如果c是十六进制数字字符,则返回1,否则返回0。

int islower( int c ):如果c是小写字母,则返回1,否则返回0。

int isupper( int c ):如果c是大写字母,则返回1; 否则为0。

int isspace( int c ):如果c是空格字符 - 换行符(‘\ n’),则返回1。

(‘’),换页(‘\ f’),回车(‘\ r’),水平制表符(‘\ t’)或垂直制表符(‘\ v’) - 否则为0。

int iscntrl( int c ):如果c是控制字符,则返回1,例如换行符(‘\ n’),换页符(‘\ f’),回车符(‘\ r’),水平制表符(‘\ t’),垂直制表符(‘\v’),警告(‘\ a’)或退格(‘\ b’) - 否则为0。

int ispunct( int c ):如果c是除空格,数字或字母以外的打印字符,则返回1,否则返回0。

int isprint( int c ):如果c是包含空格(‘’)的打印字符,则返回1,否则返回0。

int isgraph( int c ):如果c是除空格(‘’)以外的打印字符,则返回1,否则返回0。

示例程序

void setup () {
   Serial.begin (9600);
   delay(800);
   Serial.println("According to isdigit:\r");
   Serial.println(isdigit( '8' ) ? "8 is a": "8 is not a");//"8 is a"
   Serial.println(" digit\r" );
   Serial.println(isdigit( '8' ) ?"# is a": "# is not a") ;//"# is a"
   Serial.println(" digit\r");
   Serial.println("\rAccording to isalpha:\r" );
   Serial.println(isalpha('A' ) ?"A is a": "A is not a");//"A is a"
   Serial.println(" letter\r");
   Serial.println(isalpha('A' ) ?"b is a": "b is not a");//"b is a"
   Serial.println(" letter\r");
   Serial.println(isalpha('A') ?"& is a": "& is not a");//"& is a"
   Serial.println(" letter\r");
   Serial.println(isalpha( 'A' ) ?"4 is a":"4 is not a");//"4 is a"
   Serial.println(" letter\r");
   Serial.println("\rAccording to isalnum:\r");
   Serial.println(isalnum( 'A' ) ?"A is a" : "A is not a" );//"A is a"
   Serial.println(" digit or a letter\r" );
   Serial.println(isalnum( '8' ) ?"8 is a" : "8 is not a" ) ;//"8 is a"
   Serial.println(" digit or a letter\r");
   Serial.println(isalnum( '#' ) ?"# is a" : "# is not a" );//"# is not a"
   Serial.println(" digit or a letter\r");
   Serial.println("\rAccording to isxdigit:\r");
   Serial.println(isxdigit( 'F' ) ?"F is a" : "F is not a" );//"F is a"
   Serial.println(" hexadecimal digit\r" );
   Serial.println(isxdigit( 'J' ) ?"J is a" : "J is not a" ) ;//"J is not a"
   Serial.println(" hexadecimal digit\r" );
   Serial.println(isxdigit( '7' ) ?"7 is a" : "7 is not a" ) ;//"7 is a"
   Serial.println(" hexadecimal digit\r" );
   Serial.println(isxdigit( '$' ) ? "$ is a" : "$ is not a" );//"$ is not a"
   Serial.println(" hexadecimal digit\r" );
   Serial.println(isxdigit( 'f' ) ? "f is a" : "f is not a");//"f is a"
}
void loop () {
}
  • 串口打印
    在这里插入图片描述

爱自己最重要, 让自己开心很重要,其他人都是过客。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Arduino - 字符判断函数 的相关文章

  • python中typeerror_详解python中的TypeError错误解决办法

    新手在学习python时候 会遇到很多的坑 下面来具体说说其中一个 在使用python编写面向对象的程序时 新手可能遇到TypeError this constructor takes no arguments这个错误 例如下面的程序 cl
  • gtest 单元测试工具的基本使用

    gtest 单元测试 gtest 简介 gtest 优点 安装 gtest 测试 demo 总结 gtest 简介 gtest是Google的一套用于编写C 测试的框架 可以运行在很多平台上 包括Linux Mac OS X Windows
  • 获取时间和脸颊、下颚线灯模式

    电流检测的应用 电路检测电路常用于 高压短路保护 电机控制 DC DC换流器 系统功耗管理 二次电池的电流管理 蓄电池管理等电流检测等场景 对于大部分应用 都是通过感测电阻两端的压降测量电流 一般使用电流通过时的压降为数十mV 数百mV的电
  • android动画内存优化,Android 性能优化之内存优化

    定义 内存泄漏 Memory Leak 指 程序在申请内存后 当该内存不需再使用但却无法被释放的现象 内存溢出 OOM 应用程序所需的内存超出了为其分配的内存限额 Android将进程分为5个优先等级 前台进程 可见进程 服务进程 后台进程
  • google.api.http

    Http 定义api服务的http配置 它包含一个httprule列表 每个列表指定一个rpc方法到一个或多个http rest api方法的映射 字段 描述 rules HttpRule 一个适用于各个API方法的http配置规则列表 注
  • 编译优化之 - 向量化优化入门

    1 介绍 2 Intel高级向量扩展 3 GCC中向量化 4 ICC中向量化 5 AOCC LLVM中向量化 1 介绍 什么是自动向量化 自动向量化 automatic vectorization 是自动并行化 automatic para
  • STM32笔记:高精度脉冲宽度计 双输入捕获+DMA方式

    本文介绍如何用STM32F107VC Waveshare Open107V实验板 实现高精度的脉冲宽度计 占空比 开发环境 IDE STM32CubeIDE 1 8 固件库 STM32Cube FW F1 V1 8 4 函数发生 RIGOL
  • 人工智能开源社区论坛----开源助力多领域AI生态发展

    ChinaOSC 2022 人工智能开源社区论坛 开源助力多领域AI生态发展技术论坛将于2022年8月20日13 00 17 00在陕西省西安高新国际会议中心召开 本论坛将围绕 开源社区助力多领域AI生态发展 主题 邀请AI开源领域顶级技术
  • Filco圣手二代键盘蓝牙连接方法

    键盘前面的电源按钮按进去 即打开电源开关 同时按下Ctrl Alt Fn 看到蓝灯和红灯同时亮起 之后剩蓝灯闪烁 按下小键盘中数字键1 4中的一个 一共可以连4台设备 如果你选的数字之前连接过其他设备 可以在第2步做完之后先按两秒清除按钮
  • 托福综合写作套路

    1 文章认定 教授驳斥 2 The reading passage provides three possible functions of the carved stone balls However in the lecture the
  • 决策树算法原理+例题练习

    一 决策树的优缺点 优点 计算复杂度不高 输出结果易于理解 对中间值的缺失值不敏感 可以处理不相关特征数据 缺点 可能会产生过度匹配的问题 使用数据类型 数值型和标称型 二 一个实例 一天 老师问了个问题 只根据头发和声音怎么判断一位同学的
  • LSF的使用方法总结

    一 LSF 基本介绍 LSF Load Sharing Facility 是IBM旗下的一款分布式集群管理系统软件 负责计算资源的管理和批处理作业的调度 它给用户提供统一的集群资源访问接口 让用户透明地访问整个集群资源 同时提供了丰富的功能
  • 5.19 华为算法笔试经验

    华为机试一共三道题 对应的分值分别为100分 200分 300分 下面介绍这次笔试题目 第一题 一共有N个员工围成一个圆圈 分别是1 2 N每一个员工身上有对应数量的令牌 轮流从顺时针以及逆时针进行报数 顺时针报数周期为R 逆时针报数周期为
  • 僵尸进程的多种处理方式-图文详细教程

    问题引起原因 yum更新导致无法使用yum 于是将占用进程kill掉 导致 ps A ostat ppid pid cmd grep e Zz ps ef no headers k8s环境kubelet服务异常 systemd1服务超时 导
  • IP地址和子网掩码详解

    原文链接 IP和子网掩码 我们都知道 是由四段数字组成 在此 我们先来了解一下3类常用的 A类IP段 0 0 0 0 到127 255 255 255 B类IP段 128 0 0 0 到191 255 255 255 C类IP段 192 0
  • Android Studio连接Mysql数据库步骤以及常见错误

    1 先把Mysql给下好 环境变量也配置好 这里我就不说了 2 下载好Navicat for Mysql软件 管理数据库 3 进入Android Studio创建一个类 写好连接数据库的代码 我们采用的是常用的JDBC方法来连接 需要的ja
  • JNI基础

    问题1 JNI是什么 答 JNI是Java语言的机制 Java可以通过JNI调用C C 代码 C C 代码也可以通过JNI调用Java代码 问题2 NDK是什么 答 NDK是代码库 功能有两个 1 将 c cpp文件转换成 so文件 2 将
  • 【产品笔记】3.产品经理实战

    1 团队合作 2 产品设计到立项 3 项目启动到产品上线 4 产品上线后的运营 产品 商业模式 功能 设计 技术 内容 产品的成功归功于整个团队的精诚合作 产品的失败只归咎于产品负责人 用户运营 拉新 留存 老用户召回 内容运营 内容质量
  • Visual Studio 2017下载地址和安装教程(图解版)

    Visual Studio 2017下载地址和安装教程 图解版 Visual Studio 2017不仅支持C C Python Visual Basic Node js HTML JavaScript等各大编程语言 还能开发 iOS An

随机推荐

  • 华为OD机试真题-日志排序-2023年OD统一考试(B卷)

    华为OD机试2023年最新题库 JAVA Python C 题目描述 运维工程师采集到某产品现网运行一天产生的日志N条 现需根据日志时间按时间先后顺序对日志进行排序 日志时间格式为 H M S N H表示小时 0 23 M表示分钟 0 59
  • MOS管的知识,看这一篇就可以了

    转载 21ic电子网 2020 11 15 18 19 以下文章来源于记得诚电子设计 作者记得诚 记得诚电子设计 分享电子硬件知识 永远相信美好的事情即将发生 今天的文章简单总结一下MOS管 如下是本文目录 场效应管分类 场效应管分为结型
  • 虚拟机执行子程序-虚拟机字节码执行引擎

    代码编译的结果从本地机器码转变为字节码 是存储格式发展的一小步 却是编程语言发展的一 大步 虚拟机执行子程序 虚拟机字节码执行引擎 一 概述 二 运行时栈帧结构 1 局部变量表 2 操作数栈 3 动态连接 4 方法返回地址 5 附加信息 三
  • 图像处理知识框架

    转自https blog csdn net hitwengqi article details 8292675 花了点时间整理了一下数字图像处理知识体系 从宏观上把握图像处理 使自己的学习思路就更加清晰 1 本文大部分内容来自 http b
  • Vue前端框架12 组件生命周期、生命周期的应用、动态组件、组件保持存活、异步组件、依赖注入、Vue应用原理

    文章目录 一 组件生命周期 二 生命周期的应用 三 动态组件 四 组件保持存活 五 异步组件 六 依赖注入 七 Vue应用 一 组件生命周期 每个Vue组件在创建时需要经历一系列的初始化步骤 比如设置侦听 编译模板 挂载实例到DOM 或者数
  • Matlab中的矩阵合并操作

    Matlab中的矩阵合并操作 矩阵是Matlab中最常用的数据结构之一 矩阵合并也是一个十分实用的操作 本文将介绍在Matlab中如何进行矩阵合并 并提供相应的源代码 在Matlab中 可以用方括号 来表示一个矩阵 矩阵合并可以分为横向合并
  • 【iOS】push与present Controller的区别

    文章目录 前言 一 push方法 二 pop方法 三 present方法 四 dismiss方法 五 dismiss多级的方法 举例 动画 前言 iOS推出与退出界面有两种方式 push与present 接下来笔者分别介绍这两种方式 一 p
  • Lcd(一)显示原理

    一 LCD控制原理 S5PV210处理器中自带LCD控制器 控制LCD的显示 把 LCD 图像数据从一个位于系统内存的 video buffer 传送到一个外部的 LCD 驱动器接口 类型 1 STN 超扭曲向列 它的特点是功耗低 但亮度不
  • 图片隐写神器Stegsolve安装教程

    首先需要配置电脑的java环境 网上有教程 通过该链接 www caesum com handbook Stegsolve jar 下载Stegsolve jar 有Java环境的话会自动选择使用Java打开 如下图 功能分析 File F
  • 【Bitlocker篇】BitLocker无法加密系统盘,提示正在启动Bitlocker,系统找不到指定的文件的解决方案

    Bitlocker篇 BitLocker无法加密系统盘 提示正在启动Bitlocker 系统找不到指定的文件的解决方案 先排除先天不足因素 1 首先电脑硬件支持TPM 2 电脑系统支持BitLocker加密 3 除系统盘外其他盘能正常启用B
  • 硬件产品经理:从入门到精通(新书发布)

    目录 简介 新书 框架内容 相关课程 简介 在完成多款硬件产品从设计到推向市场的过程后 笔者于2020年开始在产品领域平台输出硬件相关的内容 在这个过程中经常会收到很多读者的留言 希望能推荐一些硬件相关的书籍或资料 其实 笔者刚开始做硬件产
  • Win10 警告-已计划将多个默认网关用于提供单一网络例如Intranet或Internet)的冗余…的解决方案

    电脑因为硬盘故障更换了硬盘重新安装了系统 按照以前设置的IP地址重新设置 但是总是出现 警告 已计划将多个默认网关用于提供单一网络 折腾了好久 不得其解 最后 把 控制面板 网络和 Internet 网络连接 里的 WLAN 蓝牙网络连接
  • Linux文件系统实验(C语言实现新建、打开、关闭、读写文件以及查改文件权限)

    操作系统实验导航 实验一 银行家算法 https blog csdn net weixin 46291251 article details 115384510 实验二 多级队列调度和多级反馈队列调度算法 https blog csdn n
  • mac用终端登陆PostgreSQL时出现-bash: psql: command not found

    系统无psql命令 此时要将postgresql 的 bin 目录添加到环境变量中 注意你的postgresql在哪 还有它的版本 推荐前往 Applications和 Library确认 export PATH Library Postg
  • 开源LLM「RWKV」想要打造AI领域的Linux和Android|ChatAI

    RWKV想逐步成为最强开源模型 中期计划取代Transformer 能如愿吗 我们没有护城河 OpenAI也是 近期 谷歌内部人士在Discord社区匿名共享了一份内部文件 点破了谷歌和OpenAI正面临的来自开源社区的挑战 尽管经外媒Se
  • [2019计算机视觉]——贪心学院 学习笔记 1.环境配置

    环境 硬件环境 我的硬件环境是 Intel I7 8750H GTX 1060 系统环境 anaconda 4 5 11 Ubuntu18 04 软件环境 名称 版本 python 3 6 7 cuda 9 0 cudnn 7 4 Tens
  • 一键生成微信小程序的制作工具-小程序切片工具

    微信小程序前端开发者工具 小程序切片 是一款根据效果图像画画一样来设计微信小程序 自动生成导出前端页面的快速开发工具 可以很方便 快速地生成小程序的wxml wcss js文件 可以大大提高您的工作效率 减少前端布局的编写工作 功能如下 1
  • Node(4)

    文章目录 express跨域解决 路由传参 静态资源渲染 serve static MVC 1 新建文件夹 routers 路由管理utils工具类 2 新建文件夹 controller 请求处理 3 新建文件夹 model service
  • TensorRT学习(实战-自定义算子)

    YOLOv4进行TensorRT推理的时候会使用Mish激活函数 而使用到的mish激活函数没有在TensorRT进行实现 故需要进行实现对应TensorRT插件 故需要进行Mish激活函数的实现 Mish激活函数定义 def mish f
  • Arduino - 字符判断函数

    Arduino 字符判断函数 字符判断函数 虽然在实际编程中可能很少使用到 但是可以作为知识储备 有必要了解一些 这些函数包含在ctype h当中 Arduino IDE路径 C Program Files x86 Arduino hard