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

下标引用操作符;函数调用操作符;结构成员访问操作符

[] --- 下标引用操作符

下标引用操作符的操作数:

一个数组名 + 一个索引值

代码演示:

#include<stdio.h>
int main()
{//创建数组int arr[5] = { 1,2,3,4,5 };
//       数组下标: 0 1 2 3 4          //找到数组中3的元素并打印printf("%d\n", arr[2]);return 0;
}

数组的下标:是从0开始的,依次递增1

int arr[5]:创建数组时的[5]并不是下标引用操作符,这只是创建数组的形式,[5]是指定大小,元素个数为5

arr[2]:下标引用操作符的两个操作数为arr和2, arr为数组名,2为索引值(数组下标),通过这两个操作数和下标引用操作符就能查找到指定的元素


() --- 函数调用操作符

函数调用操作符的操作数: 

 接受一个或多个操作数:第一个操作数是函数名,剩余的操作数就是传递给函数的参数

代码演示(两个或多个操作数): 

#include<stdio.h>
#include<string.h>
int main()
{int ret = strlen("abc");printf("ret = %d\n", ret);return 0;
}

strlen("abc"):此函数调用操作符的操作数为:数组名:strlen、参数:"abc"

代码演示(一个操作数):

#include<stdio.h>void test()
{printf("hello\n");
}int main()
{test();return 0;
}

test():此函数调用操作符的操作数只有:数组名:test


. and -> ---  结构成员访问操作符

 代码演示(.点访问操作符):

#include<stdio.h>struct Book
{char name[20];//书名char author[20];//作者float price;//价格
};int main()
{struct Book b1 = { "C语言","鹏哥",68.5f };//打印书的消息printf("%s\t%s\t%f", b1.name, b1.author, b1.price);return 0;
}

创建b1结构体变量后,就可通过点访问操作符访问到b1变量的每一个成员

结构体变量.成员名

代码演示(->箭头访问操作符): 

#include<stdio.h>struct Book
{char name[20];//书名char author[20];//作者float price;//价格
};void Print(struct Book* pb1)
{//方法1:解引用后利用点访问操作符打印printf("%s\t%s\t%f", (*pb1).name, (*pb1).author, (*pb1).price);//方法2:利用箭头访问操作符直接打印printf("%s\t%s\t%f", pb1->name, pb1->author, pb1->price);
}int main()
{struct Book b1 = { "C语言","鹏哥",68.5f };//封装一个函数打印b1结构体成员的消息Print(&b1);return 0;
}

 结构体指针->成员名


总结:C语言各类操作符合集

算数操作符(除法操作符和取模操作符)-CSDN博客

移位操作符-CSDN博客

按位与、或、异或操作符-CSDN博客

单目操作符-CSDN博客

逻辑操作符-CSDN博客

条件操作符(三目操作符);逗号表达式-CSDN博客

相关文章:

  • MySQL-核心知识要点
  • 基于大语言模型的本地知识库问答(离线部署)
  • vue3开发过程中遇到的一些问题记录
  • C++ 彻底搞懂指针(1)
  • golang 1.22特性之for loop
  • 确保家电安全无忧:可燃气体报警器检验的重要性与必要性
  • 【小程序静态页面】猜拳游戏大转盘积分游戏小程序前端模板源码
  • word图题表题公式按照章节编号(不用题注)
  • 基于x86+FPGA+AI轴承缺陷视觉检测系统,摇枕弹簧智能检测系统
  • [数据集][目标检测]电力场景下电柜箱门把手检测数据集VOC+YOLO格式1167张1类别
  • MapReduce的执行流程排序
  • Spring Boot中的分布式文件系统
  • 版本控制系统:Git 纯应用(持续更新)
  • 轻松创建对象——简单工厂模式(Python实现)
  • vue 中使用element-ui实现锚点定位表单
  • 【mysql】环境安装、服务启动、密码设置
  • Akka系列(七):Actor持久化之Akka persistence
  • canvas绘制圆角头像
  • el-input获取焦点 input输入框为空时高亮 el-input值非法时
  • ERLANG 网工修炼笔记 ---- UDP
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • JavaScript类型识别
  • JS专题之继承
  • Leetcode 27 Remove Element
  • Median of Two Sorted Arrays
  • SpiderData 2019年2月23日 DApp数据排行榜
  • Transformer-XL: Unleashing the Potential of Attention Models
  • web标准化(下)
  • windows-nginx-https-本地配置
  • 关于springcloud Gateway中的限流
  • 检测对象或数组
  • 入门到放弃node系列之Hello Word篇
  • 入门级的git使用指北
  • 使用agvtool更改app version/build
  • 腾讯优测优分享 | Android碎片化问题小结——关于闪光灯的那些事儿
  • 一天一个设计模式之JS实现——适配器模式
  • 原创:新手布局福音!微信小程序使用flex的一些基础样式属性(一)
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • #ubuntu# #git# repository git config --global --add safe.directory
  • $.ajax,axios,fetch三种ajax请求的区别
  • (02)vite环境变量配置
  • (2024最新)CentOS 7上在线安装MySQL 5.7|喂饭级教程
  • (4) PIVOT 和 UPIVOT 的使用
  • (创新)基于VMD-CNN-BiLSTM的电力负荷预测—代码+数据
  • (附源码)php新闻发布平台 毕业设计 141646
  • (附源码)spring boot儿童教育管理系统 毕业设计 281442
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (机器学习-深度学习快速入门)第一章第一节:Python环境和数据分析
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • (一) springboot详细介绍
  • (转)四层和七层负载均衡的区别
  • .babyk勒索病毒解析:恶意更新如何威胁您的数据安全
  • .Net core 6.0 升8.0
  • .NET 跨平台图形库 SkiaSharp 基础应用