int * p =NULL;和*p =NULL的区别a和a的区别

1.int * p =NULL;和*p =NULL的区别

1 .int * p =NULL

int *p=NULL;

这里写图片描述
这里写图片描述
定义一个指针变量p,其指向的内存里面保存的是int类型的数据;再定义变量p的同时把p的值设置为0x00000000, 而不是把*p的值设置为0x00000000

2.*p =NULL

int i =10;
int * p =&i;
*p =NULL;
  • int i = 10;
    int i =10;
  • int * p =&i;

这里写图片描述

  • *p =NULL;
    这里写图片描述
    p指向的内存由原来的10变为了0; 而p本身的值(内存地址)没变

2.a和&a的区别

	int a[5] = { 1,2,3,4,5 };int *ptr = (int *)(&a + 1);printf("%d,%d", *(a + 1), *(ptr - 1));

这里写图片描述

  • &a :a单独存在,为数组a的首地址

  • &a+1:a为数组的首地址,数组的首地址加上 (数组元素个数)
        sizeof(int)即下个数组的首地址
    所以两个数相差20个bite

  • a:数组首元素地址a[0]

  • a+1:数组下一个元素的首地址
    这里写图片描述

  • 值相同意义不同
    所以两个数相差4个bite

  • (a+1):没有单独放在括号内部,降级变为首元素地址,
         即为数组下一个元素首地址

  • (ptr-1):ptr指向的是a[5],并且ptr是int*型的,所以他减1指向a[4]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/382608.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

当我们说TCP是可靠协议时,我们真正表达的是什么

转载出处:https://blog.csdn.net/dog250/article/details/82177299 很明确地说,从通信意义上推敲,TCP一点都不可靠。一个抽象的协议,怎么可能左右介质来保证可靠,不存在的。但凡是经由某种介质的通信行为均不可能是绝对…

IP地址=192.168.127.101,子网掩码255.255.255.192,计算网络地址,主机号,广播地址和主机最大数

纯手写,如果哪写错了,还希望指正 IP地址192.168.127.101,子网掩码255.255.255.192,计算网络地址,主机号,广播地址和主机最大数 255.255.255.192子网掩码转换成二进制为 11111111.11111111.11111111.11000…

C++ 类模板遇到继承的问题以及解决

#define _CRT_SECURE_NO_WARNINGS #include<iostream> using namespace std;template<class T> class Base {T m_A; //子类创建时候 必须要知道T的类型&#xff0c;才能给父类中的m_A分配内存 };template<class T1 , class T2> class Son :public Base<T2…

A B C类IP地址的判断

IP地址131.153.12.71是一个&#xff08;&#xff09;类IP地址。 IP地址分类A类网络的IP地址范围为1.0.0.1&#xff0d;127.255.255.254&#xff1b; B类网络的IP地址范围为&#xff1a;128.1.0.1&#xff0d;191.255.255.254&#xff1b; C类网络的IP地址范围为&#xff1a;1…

linux sshd启动失败 sshd re-exec requires execution with an absolute path

sshd 提示 sshd re-exec requires execution with an absolute path提示 需要绝对路径来执行 sshd&#xff0c; 刚开始学 不知道怎么用绝对路径来启动&#xff1f; 以后明白了&#xff0c; 这里再补充上 google 使用 service sshd restart 输入密码来启动

有一个小白程序员,写了一个只能对5个数字进行排序的函数,现在有25个不重复的数字,

题目&#xff1a;有一个小白程序员&#xff0c;写了一个只能对5个数字进行排序的函数&#xff0c;现在有25个不重复的数字&#xff0c;请问小白同学最少调用几次该函数&#xff0c;可以找出其中最大的三个数&#xff1f; A.5 B.6 C.7 D.8 答案&#xff1a;C 解析&#xf…

ubuntu修改ls显示目录的颜色

ls查看目录&#xff0c; 背景是黑色的&#xff0c;目录颜色是深蓝色&#xff0c;基本看不清楚。 解决办法 因为ubuntu下的/etc/目录里没有DIR_COLORS, 所以费了点劲儿。 2. 利用dircolors命令&#xff0c;查看我们的系统当前的文件名称显示颜色的值&#xff0c;然后利用管道重…

初始序列为1 8 6 2 5 4 7 3一组数采用堆排序,当建堆(小根堆)完毕时,堆所对应的二叉树中序遍历序列为

初始序列为1 8 6 2 5 4 7 3一组数采用堆排序&#xff0c;当建堆&#xff08;小根堆&#xff09;完毕时&#xff0c;堆所对应的二叉树中序遍历序列为&#xff1a;&#xff08;&#xff09; 8 3 2 5 1 6 4 7 3 2 8 5 1 4 6 7 3 8 2 5 1 6 7 4 8 2 3 5 1 4 7 6 A

设一组初始记录关键字序列为(25,50,15,35,80,85,20,40,36,70)进行一趟归并后的结果为

设一组初始记录关键字序列为(25&#xff0c;50&#xff0c;15&#xff0c;35&#xff0c;80&#xff0c;85&#xff0c;20&#xff0c;40&#xff0c;36&#xff0c;70)&#xff0c;其中含有5个长度为2的有序子表&#xff0c;则用归并排序的方法对该记录关键字序列进行一趟归并…

C++ 异常基本语法

#define _CRT_SECURE_NO_WARNINGS #include<iostream> using namespace std;class MyException { public:void printError(){cout << "我自己的异常类的错误" << endl;} };class Person { public:Person(){cout << "Person的构造函数&q…

文字常量区和栈区考点

求以下程序输出结果 #include <stdio.h>char * fun1() {char * str "hello";return str; }char * fun2() {char str[] "world";return str; } int main() {printf("%s\n", fun1()); printf("%s\n", fun2()); return 0; }结…

C++ 异常变量的生命周期

#define _CRT_SECURE_NO_WARNINGS #include<iostream> using namespace std;class MyException { public:MyException(){cout << "MyException构造函数调用" << endl;}MyException(const MyException & e){cout << "MyException拷贝…

判断栈的压入和弹出

序列1&#xff0c;2&#xff0c;3&#xff0c;4&#xff0c;5是压栈序列。序列 4&#xff0c;3&#xff0c;5&#xff0c;1&#xff0c;2是弹出序列。判断第二个是不是弹出序列 三步走 如果下一个弹出的数字刚好是栈顶数字&#xff0c;直接弹出如果不在栈顶&#xff0c;就一直…

C++ 多态在异常中的使用

#define _CRT_SECURE_NO_WARNINGS #include<iostream> using namespace std;//异常 基类 class BaseException { public:virtual void printError() 0; };//空指针 异常 class NULLPointException :public BaseException { public:virtual void printError(){cout <…

一条语句判断数x是否2的n次幂.求取二进制1的个数

一条语句判断数x是否2的n次幂 return &#xff01;(x & (x - 1)); 求取十进制数字元素1的个数 int fun(int x) { int count 0; int i, j, k; /方法2 负数不可计算&#xff0c;需要改进/ while (x ! 0){ if (x & 1 1) count; x x >> 1; } /方法1/ while (x …

C++ 标准输入流01

#define _CRT_SECURE_NO_WARNINGS #include<iostream> using namespace std;/* cin.get() //一次只能读取一个字符 cin.get(一个参数) //读一个字符 cin.get(两个参数) //可以读字符串 cin.getline() cin.ignore() cin.peek() cin.putback() */void test01() {//cin.get(…

动态规划学习笔记1

求连续子数组的最大和问题 代码不重要&#xff01;重要的是思想过程(括弧 好难啊&#xff01;&#xff01;&#xff01;) 输入的数组为{1&#xff0c;-2&#xff0c;3&#xff0c;10&#xff0c;-4&#xff0c;7&#xff0c;2&#xff0c;-5}&#xff0c;和最大的子数组为{3&…

C++ 文件读写操作01

#define _CRT_SECURE_NO_WARNINGS #include<iostream> using namespace std; //文件读写的头文件 #include <fstream>//1、写文件 void test01() {//参数 1 文件路径 参数2 打开方式//ofstream ofs("./test.txt", ios::out | ios::trunc);ofstream …

动态规划学习笔记2

题目描述&#xff1a; 在一个mn的棋盘的每一格都放有一个礼物&#xff0c;每个礼物都有一定的价值&#xff08;价值大于0&#xff09;。你可以从棋盘的左上角开始拿格子里的礼物&#xff0c;并每次向右或者向下移动一格直到到达棋盘的右下角。给定一个棋盘及其上面的礼物&…

C++ i/o类库中 常用流类

类名 作用 在哪个头文件中声明 ios 抽象基类 iostream ------------------------------------------------------------------- istream 通用输入流和其他输入流的基类 iostream ostream 通用输出流和其他输出流的基类…