int &n与int *n有啥区别,int* &n是啥意思

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了int &n与int *n有啥区别,int* &n是啥意思相关的知识,希望对你有一定的参考价值。

int &n与int *n有什么区别,int* &n是什么意思

int &n与int *n区别为:n性质不同、初始化不同、实际修改不同。int* &n意思是指向整数型变量的指针别名。

一、n性质不同

1、int &n:int &n的n是一个整数型变量的别名。

2、int *n:int *n的n是一个指向整数型变量的指针。

二、初始化不同

1、int &n:int &n需要进行初始化,否则编译报错。

2、int *n:int *n不需要进行初始化,指向的整数型变量初始化,即可编译。

三、实际修改不同

1、int &n:int &n修改n实际修改的是整数型变量自己。

2、int *n:int *n修改n实际修改的是指向的整数型变量,而不是指针自己。

参考技术A int *n;说明n是一个指向整数型变量的指针;
一般用法:
int *n;
int m;
m = 100;
n = &m;
这样n就是一个指向m变量的整数型指针,修改*n相当于修改m

int &n;说明n是一个整数型变量的别名,定义&n必需要进行初始化,否则编译报错。
一般用法:
int m[10];
int &n = m[3];
这样n就是m数组第三个变量的一个别名,操作n相当于操作m[3],m[3]和n的物理地址是重合的,只是称呼名称不一样。

int *&n;说明n是一个整数型指针的别名;
一般用法:
int m = 100;
int *d = &m;
int *&n = d;
*n = 99; // 为m和*d赋值为99
d是一个指向m的整数型指针,n是d的另外一个操作别名;本回答被提问者采纳
参考技术B int &n = a ,引用,简单地理解就是两个变量完全一样,占用内存地址也一样,对其中一个操作能影响到另外一个。不过再详细点我也不明白了,这个是C++中新增加的。
int* &n没见过……
参考技术C int &n是一个引用
如 int a=4;
int &n=a;//此时,n 是a的一个别名
参考技术D 没有int &n和int* &n这样的用法。

在C#中long与int64有啥区别吗

参考技术A

在C#中long与int64区别为:对象不同、声明方式不同、精度不同。

一、对象不同

1、long:long是C#基本库System.Int64里的一个实例对象。

2、int64:int64是C#基本库System.Int64里的一个定义对象。

二、声明方式不同

1、long:long在C#中采用了值类型的声明方式。

2、int64:int64在C#中采用了引用类型的声明方式。

三、精度不同

1、long:long是长整形数据类型,数据转换为int64不会失精度。

2、int64:int64是整形数据类型,数据转换为long会失精度。

以上是关于int &n与int *n有啥区别,int* &n是啥意思的主要内容,如果未能解决你的问题,请参考以下文章

int *ptrl=(int*)(&a+1); int *ptr=(int*)((int)a+1);这两个定义有啥区别?

在C语言中float 与int 有啥不同

int c=8;和int? c=8;有啥区别,作用是?

MYSQL INT(N)以及zerofill的使用区别

getstring和tostring有啥区别吗?

Integer n=new Integer和int n=1的区别