C/C++中定义指针时*应该紧跟着前面的类型还是后面的变量呢?

查看:556
本文介绍了C/C++中定义指针时*应该紧跟着前面的类型还是后面的变量呢?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

在定义指针时,写成

int* p;

int *p;

都能编译通过。但是,应当怎样理解*intp的关系呢?
也就是说,这个语句应该理解成 int *p ,还是 int* p 呢?
int *pint (*p)是等价的吗?那int (*p)[5]int *p[5]为什么是两个不同的语句?
可以将*看做一种数据类型吗?int*整体是一种数据类型吗?
这里的*与使用指针时的取变量运算符*是一个东西吗?

C++初学者诚心向大神请教一二

解决方案

int* p; 比较合适,这就是为什么 int (*p)[5]int *p[5] 不是一个概念

* 不是一种类型,你不需要纠结 * 是什么东西,语法就是这样的

定义时的 * 仅仅是与类型搭配使用的一般意义的指针

表达式中变量前的 * 是另一个概念:解引用

这篇关于C/C++中定义指针时*应该紧跟着前面的类型还是后面的变量呢?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆