解析C/C++指针、函数、结构体、共用体攻略
指针
指针是C/C++中非常重要的概念,它存储了一个变量的内存地址。通过指针,我们可以直接访问和修改内存中的数据。以下是指针的基本用法:
声明指针
要声明一个指针,需要使用*
符号。例如,int* ptr;
声明了一个指向整数的指针。
初始化指针
指针可以通过将其指向一个变量或者使用NULL
进行初始化。例如,int* ptr = #
将指针ptr
指向变量num
的地址。
解引用指针
通过解引用指针,我们可以访问指针所指向的变量的值。使用*
符号来解引用指针。例如,int value = *ptr;
将指针ptr
所指向的值赋给变量value
。
示例1:指针的基本用法
#include <stdio.h>
int main() {
int num = 10;
int* ptr = #
printf(\"Value: %d\
\", *ptr); // 输出:Value: 10
*ptr = 20;
printf(\"Value: %d\
\", num); // 输出:Value: 20
return 0;
}
函数
函数是C/C++中的一种代码组织方式,它可以接收参数并返回一个值。以下是函数的基本用法:
声明函数
函数的声明包括函数的返回类型、函数名和参数列表。例如,int add(int a, int b);
声明了一个名为add
的函数,它接收两个整数参数并返回一个整数。
定义函数
函数的定义包括函数的实现代码。例如,下面是一个计算两个整数之和的函数的定义:
int add(int a, int b) {
return a + b;
}
调用函数
要调用一个函数,只需使用函数名和参数列表。例如,int result = add(3, 5);
调用了add
函数,并将返回值赋给变量result
。
示例2:函数的基本用法
#include <stdio.h>
int add(int a, int b) {
return a + b;
}
int main() {
int result = add(3, 5);
printf(\"Result: %d\
\", result); // 输出:Result: 8
return 0;
}
结构体
结构体是一种自定义的数据类型,它可以包含多个不同类型的成员变量。以下是结构体的基本用法:
声明结构体
要声明一个结构体,需要使用struct
关键字。例如,struct Person { char name[20]; int age; };
声明了一个名为Person
的结构体,它包含一个名为name
的字符数组和一个名为age
的整数。
定义结构体变量
结构体变量的定义包括结构体类型和变量名。例如,struct Person p1;
定义了一个名为p1
的Person
类型的结构体变量。
访问结构体成员
通过结构体变量和成员运算符.
,可以访问结构体的成员变量。例如,p1.age = 25;
将p1
的age
成员变量设置为25。
示例3:结构体的基本用法
#include <stdio.h>
struct Person {
char name[20];
int age;
};
int main() {
struct Person p1;
strcpy(p1.name, \"John\");
p1.age = 25;
printf(\"Name: %s\
\", p1.name); // 输出:Name: John
printf(\"Age: %d\
\", p1.age); // 输出:Age: 25
return 0;
}
共用体
共用体是一种特殊的数据类型,它允许在相同的内存位置存储不同的数据类型。以下是共用体的基本用法:
声明共用体
要声明一个共用体,需要使用union
关键字。例如,union Data { int num; float f; };
声明了一个名为Data
的共用体,它可以存储一个整数或一个浮点数。
定义共用体变量
共用体变量的定义包括共用体类型和变量名。例如,union Data d1;
定义了一个名为d1
的Data
类型的共用体变量。
访问共用体成员
通过共用体变量和成员运算符.
,可以访问共用体的成员变量。注意,共用体的成员变量共享同一块内存。例如,d1.num = 10;
将d1
的num
成员变量设置为10,然后可以通过d1.f
访问相同的内存位置上的浮点数。
示例4:共用体的基本用法
#include <stdio.h>
union Data {
int num;
float f;
};
int main() {
union Data d1;
d1.num = 10;
printf(\"Num: %d\
\", d1.num); // 输出:Num: 10
d1.f = 3.14;
printf(\"Float: %f\
\", d1.f); // 输出:Float: 3.140000
return 0;
}
以上是关于C/C++指针、函数、结构体和共用体的基本攻略。希望这些示例能帮助你更好地理解这些概念。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:解析C/C++指针、函数、结构体、共用体 - Python技术站