C语言基础——指针

指针:变量,存储的值是另外一个变量的地址,

指针的类型取决于指向的变量类型。

指针使用时必须初始化,不然就是野指针。将会存储垃圾地址。

不能直接解引用一个空指针,否则会发生段错误,因为0号地址属于系统级空间,不允许用户级程序访问。

p 与 *p

p是指针变量,p 的值是p所指向的变量的地址;

*p是p所指向的变量,*p的值是p所指向的变量的值;

时间: 2024-11-08 19:08:02

C语言基础——指针的相关文章

黑马程序员---C语言基础---指针

------iOS培训.Java培训.Android培训, iOS学习型技术博客,期待与您交流------ C语言基础---指针 学习C语言,指针是必须重视的,本人觉得,正是因为指针才使得C语言如此的强大与妙不可言(当然还有其丰富的数据类型与运算符). 指针的作用,说的大白话一点就是:有了指针,就能找到你. 就好比全球定位系统,只要你在地球上,把精确的地址给我,我就能定位到你. 那么什么是指针变量呢?就是存放地址值的变量,该变量只能存放内存地址值,定义如下: 类型标识符   *指针变量名; 先看

Go语言 基础 指针

Go语言基础之指针 区别于C/C++中的指针,Go语言中的指针不能进行偏移和运算,是安全指针. 要搞明白Go语言中的指针需要先知道3个概念:指针地址.指针类型和指针取值. Go语言中的指针 Go语言中的函数传参都是值拷贝,当我们想要修改某个变量的时候,我们可以创建一个指向该变量地址的指针变量.传递数据使用指针,而无须拷贝数据.类型指针不能进行偏移和运算.Go语言中的指针操作非常简单,只需要记住两个符号:&(取地址)和*(根据地址取值). 指针地址和指针类型 每个变量在运行时都拥有一个地址,这个地

c语言基础----指针

什么是指针? 指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址. 指针变量声明 type *var-name; type 是指针的基类型,它必须是一个有效的 C 数据类型,var-name 是指针变量的名称.用来声明指针的星号 * 与乘法中使用的星号是相同的. 空指针 赋为 NULL 值的指针被称为空指针,NULL 指针是一个定义在标准库中的值为零的常量. 数组指针: 它是一个指针,它指向一个数组.指向数组的指针,本质是指针. int (*p)[3]   因为()优先级高,首先说明

黑马程序员——C语言基础---指针

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一. 指针变量的定义 1. 定义的格式 l 类名标识符  *指针变量名; l int *p; 2. 先定义后赋值 l 简单取值 int a = 10; int *p; p = &a; printf(“%d”, *p); l 简单改值 *p = 9; 3. 定义的同时赋值 int a = 10; int *p = &a; 4. 实现修改实参 5. 注意点 l int *p;   p = 1

奶爸业余单片机学习之:C语言基础——指针(指针变量)学习笔记

指针变量的定义: 存放地址的变量称为指针变量 1. 定义指针变量的一般形式如下: 类型名 * 指针变量名1,* 指针变量名2,... * 指针变量名n ; 例如:  int * X, *Y, *Z; 等同于: int * X; int * Y; int * Z; 实例: #include<stdio.h>void main(){    int x = 1;    int y = 2;    int* A;        //声明一个指向整形变量的指针变量A    int* B;        

C语言基础学习5:字符串与指针

1.字符串的表示形式 (1)用字符数组存放一个字符串,然后输出该字符串. char string[] = "I am happy"; printf("%s",string); (2)用字符指针指向一个字符串. char *string = "I am happy"; printf("%s",string); 2.字符指针作函数参数 (1)用字符数组作参数 void CopyString(char from[], char to

C语言基础学习3:数组与指针

数组元素的指针就是数组元素的地址. 1.指向数组元素的指针 C语言规定数组名(不包括形参数组名,形参数组并不占据实际的内存单元)代表数组中的首元素(即序列为0的元素)的地址. int a[10]; int *p1,*p2; p1 = &a[0]; p2 = a; p1和p2指向同一个数组a[10]. 2.通过指针引用数组元素 按C语言的规定,如果指针变量p已指向数组中的一个元素,则p+1指向同一个数组中的下一个元素,而不是将p的值(地址)简单的加1. 如果p的初值为&a[0],则 (1)

C语言基础学习3:指针

1.地址和指针的概念 一个变量的地址成为该变量的“指针”. 如果有一个变量专门用来存放另一变量的地址(即指针),则它称为“指针变量”,指针变量的值(即指针变量中存放的值)是地址(即指针). 指针是一个地址,而指针变量是存放地址的变量 2.变量的指针和指向变量的指针变量 2.1指针变量的定义 指针变量的定义:基类型 *指针变量名: int a; int *pointer; pointer = &a; 2.2指针变量的引用 指针变量中只能存放地址,不能将一个整数赋给一个指针变量. “&”和“*

黑马程序员-C语言基础:指针类型与指针和数组、字符串的关系

//指针变量就是用来存储地址的,只能存储地址 格式:  int  *p;  这个p为指针变量:指针变量占8个字节 类型是用来说明这个指针指向的类型: 比如上边的int代表这个指针变量会指向int类型的存储空间: int *p = &a;//这样一句可以写,此时的*只是一个标志,表示这个*只是表示p是个指针: *p = &a;//这样写就错了:此时*p表示取p指向的空间的值: 指针疑问:指针既然都占据8个字节,那么为什么要划分类型, 是因为当用*p指针取值或者赋值的时候,知道该取几个字节,比