当前位置: 首页 > news >正文

嵌入式开发学习———Qt软件环境下的C++学习(七)

Qt简介

Qt是一个跨平台的C++图形用户界面应用程序开发框架,广泛用于开发GUI程序和非GUI程序。它提供了一套丰富的库和工具,支持Windows、Linux、macOS等操作系统。Qt的核心特性包括信号与槽机制、跨平台支持、模块化设计以及高效的性能。

  • 信号与槽机制:Qt独有的通信机制,用于对象间的事件传递和数据交互。
  • 跨平台支持:一份代码可在多个平台编译运行,无需大量修改。
  • 模块化设计:Qt分为核心模块(如Qt Core、Qt GUI)和扩展模块(如Qt Network、Qt Multimedia)。

C++简介

C++是一种高效、灵活的通用编程语言,支持面向对象、泛型和过程式编程。它是C语言的扩展,兼具高性能和底层控制能力,广泛应用于系统软件、游戏开发、嵌入式系统等领域。

  • 面向对象:支持类、继承、多态等特性。
  • 高性能:接近硬件层的操作能力,适合资源密集型应用。
  • 标准库丰富:提供STL(标准模板库),包含容器、算法和迭代器等工具。

作业:

提示并输入一个字符串,统计该字符中大写、小写字母个数、数字个数、空格个数以及其他字符个数,要求使用C++风格字符串完成

#include <iostream>
#include <array>
#include <string>using namespace std;int main()
{int numA=0,numa=0,nums=0,num_=0,num=0;string str;cout << "请输入一个字符串:";getline(cin,str);for(int i=0;i<(int)str.size();i++){if(str.at(i) >= 'a' && str.at(i) <= 'z'){numa++;}else if(str.at(i) >= 'A' && str.at(i) <= 'Z'){numA++;}else if(str.at(i) >= '0' && str.at(i) <= '9'){nums++;}else if(str.at(i) == 32){num_++;}else{num++;}}cout << "大写字母有:" << numA << '\t';cout << "小写字母有:" << numa << '\t';cout << "数字有:" << nums << '\t';cout << "空格有:" << num_ << '\t';cout << "其他字符有:" << num << endl;return 0;
}

运行结果:

http://www.dtcms.com/a/355802.html

相关文章:

  • Nginx中`location`路径匹配规则
  • 20250828_学习JumpServer开源堡垒机使用:统一访问入口 + 安全管控 + 操作审计
  • AI翻唱-RVC在线使用-AutoDL
  • 现代数据架构中的核心技术组件解析
  • RPM Spec 文件中 `Provides` 与 `%py_provides` 实现原理及应用场景解析
  • AP化学课程知识点解析学习计划及培训机构推荐
  • 解决pycharm中已经设置python解释器但是terminal中没有变成对应的conda环境
  • 步进电机、直流电机常见问题
  • ASCM-专有云公共云
  • C#写的一键自动测灯带的应用 AI帮写的。
  • 梯度下降,梯度消失,梯度爆炸
  • hintcon2025 Verilog OJ
  • 若依cloud集训总结
  • 对于冯诺依曼体系的理解
  • Linux:信号详解--醍醐灌顶
  • 基于Spring Cloud Gateway构建API网关
  • 第三章:Cesium 矢量数据可视化(点、线、面)
  • Shell脚本(1)
  • 机器学习可解释库Shapash的快速使用教程(五)
  • 全能工程软件 Siemens NX:从设计到制造的全流程解决方案,附安装指南
  • 滑台模组如何实现电子制造精密加工?
  • HVV面经总结(二)
  • 自动量化交易
  • 将Ollama应用安装至其他盘
  • 通信算法之323:verilog中带参数实体模版
  • Spotfire多表关联数据关联选择
  • 在AStar模块中加入额外的搜索条件
  • 在jdk8的spring-boot-2.7.x项目中集成logback-1.3.x
  • 【涂鸦T5】3. 录音
  • 实验项目:Kubernetes Ingress 实战演练