欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C++学习(十八)(C语言部分)之 指针2

程序员文章站 2023-02-07 12:24:31
指针1、指针的概述 指针是什么? 指针是一个地址 是一个常量 int 整型 int a a是变量 指针用来做什么? 方便使用数组或者字符串 像汇编语言一样处理内存地址2、指针变量 什么是指针变量? 是一个可以存储地址的一个“容器” 经常会吧指针变量 读作指针 后面吧地址当做“指针” 吧存储地址的变量 ......

指针
1、指针的概述
指针是什么?
指针是一个地址 是一个常量
int 整型 int a a是变量
指针用来做什么?
方便使用数组或者字符串 像汇编语言一样处理内存地址
2、指针变量
什么是指针变量?
是一个可以存储地址的一个“容器”
经常会吧指针变量 读作指针 后面吧地址当做“指针” 吧存储地址的变量叫做“指针变量”


3、指针赋值
类型说明符 * 变量名=地址值;

int a=89;
int *p=&a; 定义了一个int* 类型的变量p (类型跟*是一对好基友)
之后给这个变量赋值a的地址 &取地址符号

 

 

 

 1 #include<stdio.h>
 2 int main()
 3 {
 4     //int a = 520;
 5     //int *p = &a;
 6     //printf("p=%d\n",p);
 7     //printf("a的地址=%d\n",&a);
 8 
 9     //int a = 520;
10     //int *p = &a;//第一种:在定义指针变量的时候初始化 初始化
11     //int *pp;
12     //pp = &a;//第二种:把一个变量的地址值赋给相同类型的指针变量 赋值
13     ////类似于
14     //int c;
15     //c = 5;
16     //int *ppp = pp;//把一个指针变量赋值给另一个相同数据的指针变量
17     //printf("ppp=%d\n",ppp);
18     //printf("pp=%d\n", pp);
19     //printf("pp=%d\n", &a);
20 
21     //int a = 5;
22     //char xiaoming = 'A';
23     //int *PangQi = &a;
24     //PangQi = (int*)&xiaoming;//指针赋值只能是类型相同的 如果必须要赋值类型不一样的地址 那么就要类型强转
25     //printf("%d\n",*PangQi);
26 
27     //int a = 4407873;//int是4字节 32位
28     //char *p = (char *)&a;//char是1字节 8位
29     //printf("%s\n",p);//输出ABC
30     ////ABCD 0100 0100  0100 0011 0100 0010 0100 0001
31 
32     //解引用 c语言里面 有两个有关指针的运算符  *  &
33     /*
34     & 取地址符号  int a;  &a 得到a的地址
35     * 指针运算符 或者是 指向运算符 间接运算符
36     “*”的作用是引用指针指向的变量值,引用其实就是引用该变量的地址
37     “解” 就是把该地址对应的东西解出来
38     */
39     int xiaoming = 10000;
40     int *pangqi = &xiaoming;
41     *pangqi = 10000-8880;
42     printf("%d\n",*pangqi);
43 
44 
45 
46     getchar();
47     return 0;
48 }

 

C++学习(十八)(C语言部分)之 指针2

 

C++学习(十八)(C语言部分)之 指针2

C++学习(十八)(C语言部分)之 指针2

 C++学习(十八)(C语言部分)之 指针2

C++学习(十八)(C语言部分)之 指针2

 

C++学习(十八)(C语言部分)之 指针2

2018-07-24  16:32:13