下标引用操作符;函数调用操作符;结构成员访问操作符
[] --- 下标引用操作符
下标引用操作符的操作数:
一个数组名 + 一个索引值
代码演示:
#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博客