(int *)i 与int increment(int * i) 相关理解的整理
Q1:
#include "stdio.h "
void main()
{
int i[]={2,3};
int *j=i;
int **k=&j;//双指针,正确;
int *p=NULL;
// k=&i; //i就表示一个数组地址,&i也表示双指针,为什么这里出错?
//提示cannot convert from 'int (*)[2] ' to 'int ** '
//int (*)[2]应该是数组指针吧?比如int (*c)[2];c=arry[3][2],在这里c也是当作双指针来用的啊~
// i=(int *)&i;//提示cannot convert from 'int * ' to 'int [2] '
// k=(int *)&i; //提示cannot convert from 'int * ' to 'int ** '
// k=(int *)i;//提示cannot convert from 'int * ' to 'int ** '
p=(int *)i;
p=(int *)&i;
//这里的两个强制转换都可以,在这里&i和i到底有什么区别?难道&没有用吗?
}
A1:
i=(int *)&i;//提示cannot convert from 'int * ' to 'int [2] '
这句肯定是错的,因为i作为一个数组名,虽然是一个指针,但却是一个常量指针,不能给它赋值
k=(int *)&i; //提示cannot convert from 'int * ' to 'int ** '
这句也是错的,因为&i已经是int**的了,再加一个(int**)反而弄巧成拙了
k=(int *)i;//提示cannot convert from 'int * ' to 'int ** '
这句也是错的,k是(int**)型的,不能由(int*)转换
--------------------------------------------------------------------------------------------
Q2:
义一个函数 比如:int increment(int * & i)
{
i++;
return 0;
}
参数:int * & i 怎么理解?
A2:
1)int increment(int * & i)
{
i++;
return 0;
}
increment是一个函数,其实就是int increment(int * i)。。加上&只是代表按引用方式传递。。
2)& i就是i的别名而已;表示一个整形指针的引用;
*指针 &引用
int * & i
表示一个整形指针的引用
(int *)i 与int increment(int * i) 相关理解的整理相关推荐
- int类型的实参与int*类型的形参不兼容_谁告诉的你们Python是强类型语言!站出来,保证不打你!...
1. 真的能用隐式类型转换作为强弱类型的判断标准吗?最近有些学员问我,Python到底是强类型语言,还是弱类型语言.我就直接脱口而出:Python是弱类型语言.没想到有一些学员给我了一些文章,有中文的 ...
- C++ int、long、long int、long long、uint64_t字节长度
前言 我们在进行编程时,对于int.long.long long经常使用,但是对于这些类型占用的字节长度可能不会太确定,尤其是在32位平台.64位平台,会有差异,这些知识点为基础知识,容易忽略的基础知 ...
- mysql数据库中的自增字段会不会溢出,我用的是int,万一超过这个int的表示范围会怎样
mysql数据库中的自增字段会不会溢出,我用的是int,万一超过这个int的表示范围会怎样 描述不清违规检举侵权投诉| | 2015-04-23 11:37 princelions | 浏览 596 ...
- python中int什么意思_python 的 int() 函数是什么,怎么用
int()函数是python的一个内置函数,用于把一个字符串或者数字转换为[整型],下面来具体看一下: 工具/原料 IDLE 电脑 方法/步骤 1 int()的常用语法: int(字符串或者数字,进制 ...
- arduino int转char_将char *转换为int arduino(Convert char* to int arduino)
将char *转换为int arduino(Convert char* to int arduino) 我有问题从char获取int值..这里 Serial.println(((char *)&quo ...
- int、long、long int、long long、uint64_t字节长度
前言 我们在进行编程时,对于int.long.long long经常使用,但是对于这些类型占用的字节长度可能不会太确定,尤其是在32位平台.64位平台,会有差异,这些知识点为基础知识,容易忽略的基础知 ...
- 喜闻乐见的const int *p、int* const p、const int* const p
不废话直接代码示例: 1 void f(const int *p) { 2 3 int b = 10; 4 5 *p = 10; // error 6 7 p = &b; // fine 8 ...
- mysql int和bigdecimal,mysql的 int 类型,刨析返回类型为BigDicemal 类型的奇怪现象
用的是Map,List>接收, sql语句中int类型的值做了聚合运算, 满足上述两个条件. java中去取value的值就会变成BigDecimal 类型 经过实测:mybatis 中的sql ...
- 2020-09-21C++学习笔记之与C语言区别和加强——四种const意义(const int a; int const b; const int *c; int * const d)
2020-09-21C++学习笔记(const int a; int const b; const int *c; int * const d) 这两天在上课更新晚了. 1.C/C++中的const ...
最新文章
- 每天一个linux命令:cat
- 用户模式 VS 内核模式(1)
- CUDA 4.0真技术解析
- HTML之position:absolute relative static fixed的区别和理解
- python数据结构题目_《数据结构与算法Python语言描述》习题第二章第三题(python版)...
- 学生时代,我做过最有价值的事是什么?
- Range-v3 practical examples
- Docker查看应用的实际内存
- 靠一个不存在的基因,写了学位论文顺利毕业的上交大硕士,被学校撤销了学位!...
- 【java】CGLIB动态代理原理分析
- STM8学习笔记---按键KEY
- ARCGIS 拓扑规则阐述
- java 性能测试文档模板_最好用的数据库文档生成工具
- vasp-分子动力学模拟
- Java的scjp_Java认证scjp考试过关攻略[转]
- epoll的两种触发模式ET和LT
- “24岁,一门手艺,年入百万”:真正厉害的人,都做到了这4件事
- word中更新目录中只更新页码和更新整个目录的区别
- android obb在哪,安卓手机如何打开.obb文件?
- Unity中的异步编程【1】—— Unity与async 、 await