必威体育Betway必威体育官网
当前位置:首页 > IT技术

对指针初始化或赋值的规则

时间:2019-10-08 11:12:12来源:IT技术作者:seo实验室小编阅读:89次「手机版」
 

指针初始化


#include <iOStream>
#include <string>
#include <vector>
using namespace std;


int main()
{
	int i = 0;
	int *p1 = &i;  /*类型匹配的对象地址*/
	int *p2 = p1;  /*同类型的另一个有效指针*/
	p1 = 0;         /*0值常量表达式*/
	p1 = nullptr;    /*0值常量表达式*/
	p1 = NULL;        /*0值常量表达式*/
	const int ci = 0;
	p1 = ci;           /*0值常量表达式*/
	p1 = &i + 6;       /*对象末的下一地址*/

	double db = 0;
	/*p1 = &dp;           类型不匹配ERROR
	由于指针的类型用于确定指针所值对象的类型,因此初始化或者赋值时必须保持类型匹配
	*/

	void *pd = &db;
	pd = p1;
	/*void*可以保存任何类型的指针,不允许对void * 指针操作它指向的对象*/
	system("pause");
}

指针初始化规则:

  • 0常量表达式。
  • 类型匹配的对象的地址
  • 同类型的另一个有效指针
  • 另一对象末尾的下一地址

void*可以保存任何类型的指针,不允许对void * 指针操作它指向的对象

相关阅读

数组的声明、初始化、赋值

一、数组的声明 #include<stdio.h> int main(){ float candy[365];//通过声明告诉编译器数组元素的个数和类型 char code[12]

指针常量和常量指针

1、指针常量——指针类型的常量(int *const p) 本质上一个常量,指针用来说明常量的类型,表示该常量是一个指针类型的常量。在指针常

C++中指针和引用区别---详解版

下面用通俗易懂的话来概述一下: 指针-对于一个类型T,T*就是指向T的指针类型,也即一个T*类型的变量能够保存一个T对象的地址,而类型T是

指针常量和常量指针

1、指针常量——指针类型的常量(int *const p)本质上一个常量,指针用来说明常量的类型,表示该常量是一个指针类型的常量。在指针常量

Hibernate 初始化:获取SessionFactory的各种方式

其实网络上已经存在很多关于Hibernate初始化的文章了。但是,随着Hibernate版本不断升级,有些初始化的方式已经悄悄的变成了坑。今天

分享到:

栏目导航

推荐阅读

热门阅读