typedef定义结构体--声明结构体变量--指向该类型的指针

news2024/11/16 9:25:11
// 结构体指针.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
//#define _CRT_SECURE_NO_WARNINGS
//在C或C++程序中,#define _CRT_SECURE_NO_WARNINGS 是一个预处理指令,
//用于在编译时禁止特定的安全警告。这些警告通常与使用了被视为不安全的函数有关,如 strcpy、strcat 和 sprintf 等。
//这些函数可能会导致缓冲区溢出,因为它们不会检查目标缓冲区的大小。
//当你编译程序并且使用了这些不安全的函数时,编译器可能会显示警告,告诉你这些函数的使用可能是不安全的,并建议你使用更安全的版本,
//如 strcpy_s、strcat_s 和 sprintf_s。然而,如果你确定你的代码是安全的,或者你有特殊的原因需要使用这些不安全的函数,
//你可以通过在程序的开头定义 _CRT_SECURE_NO_WARNINGS 来禁止这些警告。

#include <iostream>
#include<string.h>


int main()
{

    typedef struct Student {        //Student可省略
        char name[50];
        int age;
        float score;
    } StudentTypeDef;
    // 使用新类型名来声明一个变量  
    StudentTypeDef student1;

    // 设置变量的值  
    strcpy(student1.name, "Alice");
    student1.age = 20;
    student1.score = 90.5f;

    // 使用新类型名来声明一个指针,并初始化它指向student1  
    StudentTypeDef* ptr = &student1;

    // 使用指针访问和打印变量的值  
    printf("Name: %s\n", ptr->name);
    printf("Age: %d\n", ptr->age);
    printf("Score: %.2f\n", ptr->score);

    return 0;
    std::cout << "Hello World!\n";
}

运行:

-----------------------------------------

在STM32程序中应用解析:

typedef来定义一个新的结构体类型

1---使用新类型名来声明一个变量  

2---设置变量的值  

3---(配置时钟系统)函数传参,需要的参数为:RCC_ClkInitTypeDef结构体的指针RCC_ClkInitStruct,(传参后)指向RCC_ClkInitStructure

(函数原型:HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef  *RCC_ClkInitStruct, uint32_t FLatency))

使用指针(RCC_ClkInitStruct)访问变量(RCC_ClkInitStructure)的值   :

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1490610.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

#QT(程序打包)

1.IDE&#xff1a;QTCreator 2.实验&#xff1a;打包到windows&#xff08;exe文件&#xff09; 3.记录&#xff1a; &#xff08;1&#xff09;切换工厂到"release"&#xff0c;release模式基本没有调试信息&#xff0c;比较精简&#xff0c;debug模式有很多调试信…

第1章:绪论 1.1数据库系统概述

文章目录 1.1 数据库系统概述1.1.1 数据库的4个基本概念1.1.2 数据管理技术的产生和发展1.1.3 数据库系统的特点 1.1 数据库系统概述 1.1.1 数据库的4个基本概念 数据(Data) 是数据库中存储的基本对象 数据的定义&#xff1a;描述事物的符号记录 数据的种类&#xff1a;文本、…

京津冀光伏展

京津冀光伏展是中国在京津冀地区举办的一项光伏产业展览活动。该展览旨在展示京津冀地区光伏产业的最新发展成果&#xff0c;促进光伏行业的交流与合作&#xff0c;推动光伏产业的可持续发展。 光伏产业是指利用太阳能将光能转化为电能的产业。作为一种清洁能源&#xff0c;光伏…

文章置顶功能的测试用例应该怎么写?

写文章置顶功能的测试用例时&#xff0c;可以考虑以下几个方面&#xff1a; 一、基本功能测试&#xff1a; 检查是否能够成功将文章置顶。 验证置顶后的文章是否显示在顶部位置。 测试取消置顶功能是否正常。 二、多种状态测试&#xff1a; 置顶一篇已发布的文章。 置顶一篇…

opencart3 添加速卖通商品脚本

非爬虫&#xff0c;只能把速卖通商品信息拿下来解析插入到自己的项目里。 刚接触opencart3没多久&#xff0c;有一些新项目需要添加商品&#xff0c;每次手动从速卖通复制信息又很慢&#xff0c;就自己写了一个脚本。 思路&#xff1a;速卖通商品详情页有一段数据包含了几乎所…

5分钟速成渐变色css

色彩的分支——渐变色定义&#xff1a;按照一定规律做阶段性变化的色彩&#xff08;抽象&#xff01;&#xff01;&#xff01;&#xff09; 我们可以将图片分为两块 以中心线为参考&#xff0c;再来看渐变色的定义&#xff1a;按照一定规律做阶段性变化的色彩 既然是按一定的…

韦斯尔顿公爵以自己的方式登上顶峰!迪士尼新机器人出圈!

文 | BFT机器人 去年12月&#xff0c;迪士尼推出的最新机器人角色韦瑟尔顿公爵&#xff08;Duke Weaselton&#xff09;首次登上上海迪士尼度假区的舞台。Duke 是华特迪士尼幻想工程研发 (R&D) 和迪士尼研究中心下一代机器人技术的演示。通过杜克&#xff0c;我们能看到各…

奥维云网:森歌智能水洗集成灶开启集成灶4.0时代

新的一个商业“竞争年”正式到来。厨电集成灶行业率先发力。2曰27日&#xff0c;森歌以“勠力同心&#xff0c;共生共歌”为主题召开了盛大的全国优秀经销商峰会&#xff0c;并在峰会上一连发布了三个重磅消息&#xff0c;被视为集成灶行业的破冰行动&#xff01; 从国家统计局…

【Python】进阶学习:pandas--info()用法详解

【Python】进阶学习&#xff1a;pandas–info()用法详解 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程&#x1f448; 希望得到您的订…

模拟信号转换光电隔离变送器导轨式0-75mV0-100mV0-50mV转4-20mA0-5V0-10V

概述&#xff1a; 导轨安装DIN11 IPO OC系列模拟信号隔离放大器是一种将输入信号隔离放大、转换成按比例输出的直流信号混合集成厚模电路。产品广泛应用在电力、远程监控、仪器仪表、医疗设备、工业自控等需要直流信号隔离测控的行业。此系列产品内部采用了线性光电隔离技术相…

鸿蒙 Stage模型-应用组件-配置、UIAbility

前提&#xff1a;基于官网3.1/4.0文档。参考官网文档 基于Android开发体系来进行比较和思考。&#xff08;或有偏颇&#xff0c;自行斟酌&#xff09; 一、概念 可以看到分为运行期、编译器&#xff0c;主要关注UIAbility&#xff08;类似Activity&#xff0c;UI相关&#xff0…

【C++】list模拟实现+反向迭代器

list模拟实现 list定义list用法list iterator的使用begin() end()rbegin()rend() reverse()sort()merge()unique()remove()splice() list模拟实现struct和class的区别list三个类模板默认成员函数构造函数拷贝构造函数赋值运算符重载析构函数 数据修改操作push_back()push_fron…

探索数据之美:山海鲸可视化软件的五大核心组件解析

作为一名数据分析师&#xff0c;我们每天都在与海量的数据打交道。如何将这些看似杂乱无章的数据转化为有价值的信息&#xff0c;进而为决策提供支持&#xff0c;是我们的核心任务。在这个过程中&#xff0c;可视化工具扮演着至关重要的角色。我日常使用的是山海鲸可视化软件&a…

TCPDump 使用教程

每次服务器网络不通的时候&#xff0c;总会听到一个声音&#xff0c;你去抓包啊&#xff0c;那这里就来介绍下TCPDump&#xff0c;一款强大的网络分析工具&#xff0c;可以捕获网络上的数据包&#xff0c;并进行分析。这款工具在网络管理员和安全专家中非常受欢迎。 一、安装 …

LiveGBS流媒体平台GB/T28181功能-集中录像存储前端设备录像回看解决方案设备录像|云端录像|实时录像说明

LiveGBS集中录像存储前端设备录像回看解决方案设备录像|云端录像|实时录像说明 1、平台概述2、视频录像2.1、设备录像2.1.1、存储位置2.1.1.1、下级硬件设备2.1.1.2、下级国标平台 2.1.2、页面操作2.1.2.1、国标设备2.1.2.1.1、查看通道2.1.2.1.1.1、设备录像 2.1.2.1.2、配置中…

Scrapy与分布式开发(2.3):lxml+xpath基本指令和提取方法详解

lxmlxpath基本指令和提取方法详解 一、XPath简介 XPath&#xff0c;全称为XML Path Language&#xff0c;是一种在XML文档中查找信息的语言。它允许用户通过简单的路径表达式在XML文档中进行导航。XPath不仅适用于XML&#xff0c;还常用于处理HTML文档。 二、基本指令和提取…

【深圳五兴科技】Java面经

本文目录 写在前面试题总览1、java集合2、创建线程的方式3、对spring的理解4、Spring Boot 和传统 Spring 框架的一些区别5、springboot如何解决循环依赖6、对mybatis的理解7、缓存三兄弟8、接口响应慢的处理思路9、http的状态码 写在前面 关于这个专栏&#xff1a; 本专栏记录…

Python常用验证码标注和识别(需求分析和实现思路)

目录 一、需求分析 图像验证码识别&#xff1a; 文本验证码识别&#xff1a; 二、实现思路 三、案例与代码 四、总结与展望 在当今的数字时代&#xff0c;验证码&#xff08;CAPTCHA&#xff09;作为一种安全机制&#xff0c;广泛应用于网站和应用程序中&#xff0c;以防…

Python语言元素之变量

程序是指令的集合&#xff0c;写程序就是用指令控制计算机做我们想让它做的事情。那么&#xff0c;为什么要用Python语言来写程序呢&#xff1f;因为Python语言简单优雅&#xff0c;相比C、C、Java这样的编程语言&#xff0c;Python对初学者更加友好。 一、一些计算机常识 在…

二叉树——从中序与后序遍历序列构造二叉树、654. 最大二叉树、617. 合并二叉树

从中序与后序遍历序列构造二叉树 给定两个整数数组 inorder 和 postorder &#xff0c;其中 inorder 是二叉树的中序遍历&#xff0c; postorder 是同一棵树的后序遍历&#xff0c;请你构造并返回这颗 二叉树 。 示例 1: 在这里插入代码片 输入&#xff1a;inorder [9,3,15…