指针详解(C语言进阶)
发布时间:2023-04-23 03:09:23 361
相关标签:
- 字符指针
- 指针数组
自学b站“鹏哥C语言”笔记。本章笔记不全。
回顾:在文章【初识指针】中,我们已经了解到的指针概念有
- 指针是一种变量,用来存放地址,地址唯一标识一块内存空间。
- 指针的大小是固定的,在32平台中是4字节,在64平台中是8字节。
- 指针的不同类型决定了指针+-整数的步长,决定了解引用操作能访问的空间大小。
- 指针的运算。
一、字符指针
字符指针char*
一般使用方法
另一种使用方法
输出结果:a abcdef
解析:
char* p = "abcdef";
并不是把abcdef赋值给p,而是把首字符a的地址赋值给p
printf("%c\n", *p);
中%c是打印一个字符,解引用p的地址后打印出a
printf("%s\n", p);
中%s是打印一个字符串,指针的这种用法是正确的。
例1:
输出结果:haha
解析:
数组名是数组的首元素地址,arr1和arr2自然是不相等的。
变式:
输出结果:hehe
解析:
“abcdef”是常量字符串,是无法更改的,内存默认只存储一份。
而第4、5行代码中p1、p2的值是“abcdef”的首元素地址,是相同的。
二、指针数组
指针数组是存放指针的数组。
运用:
输出结果:
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
文章来源: https://blog.51cto.com/u_15883132/5995641
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报