C语言中关于指针的理解

cpp 复制代码
#include <stdio.h>
int main()
{
    int a=11;
    int *p=&a;        //因为a是整型的,所以我们定义指针p的时候要和a的类型一样
    char b;
    char *pa=&b;       //同理,b是字符型,所以这里的pa也要用字符型
    return 0;
}

因为*p指向的是地址,所以我们定义的时候需要在a前面用**"&"取地址运算符。**


需要注意的是,当我们定义数组的时候,如果只定义数组名的话,系统就会默认把s[0]的地址分配给*pa

cpp 复制代码
#include <stdio.h>
int main()
{
    int s[10]={8,2,3,4,5};
    int *p=&s[3];
    int *pa=&s;
    printf("%d\n",*p);
    printf("%d",*pa);
    return 0;
}
相关推荐
魂梦翩跹如雨32 分钟前
P8615 [蓝桥杯 2014 国 C] 拼接平方数——Java解答
java·c语言·蓝桥杯
[J] 一坚1 小时前
华为OD、微软、Google、神州数码、腾讯、中兴、网易有道C/C++字符串、数组、链表、树等笔试真题精粹
c语言·数据结构·c++·算法·链表
不会编程的小寒2 小时前
C and C++
java·c语言·c++
不想写笔记3 小时前
C语言 操作符(下)
c语言·笔记
誰能久伴不乏3 小时前
为什么 TCP 服务端重启会出现 “Address already in use”问题解析
linux·服务器·c语言·网络·c++·tcp/ip
VekiSon3 小时前
gdb工具介绍
linux·c语言
黎雁·泠崖3 小时前
VS2022调试通关秘籍:变量跟踪+内存分析+bug定位
c语言·bug
Bigan(安)4 小时前
【奶茶Beta专项】【LVGL9.4源码分析】03-显示框架-display
linux·c语言·mcu·arm·unix
Zsy_0510035 小时前
【数据结构】堆简单介绍、C语言实现堆和堆排序
c语言·数据结构·算法
SongYuLong的博客5 小时前
开源 C 标准库(C Library)
c语言·开发语言·开源