pointer-arithmetic 相关问题

您可以对指针执行有限数量的算术运算。这些操作是:递增,递减,加法,减法,比较和赋值。

指针算术计算

#include 使用命名空间std; class temp {int a = 10; };派生的类:temp {int b = 20; }; int main(){派生der;无效* p =&der; cout <

回答 1 投票 0

指针算术问题(数组的大小)[C ++] [重复]

#include 使用命名空间std; int main(){int arr [] = {1,2,3,4,5,6}; int size = *(&arr + 1)-arr;返回0; } int size = *(&arr + ...

回答 1 投票 1

C ++底漆5版。 :在指针向量上使用sort是不确定的吗?

在C ++入门5中。页172:“我们不能在指向两个不相关对象的指针上使用关系运算符:int i = 0,sz = 42; int * p =&i,* e =&sz; //未定义:p和e不相关; ...

回答 3 投票 1

如何在C中使用多维数组进行指针算术?

我将如何在多维数组中使用指针?在每个方向上,我将如何用指针算法代替所做的工作?我已经将我的ptr定义为* location。我想我需要做这个...

回答 2 投票 1

是否允许在分配的内存区域中以彼此的非sizeof偏移量创建对象?

这最好通过示例来解释。 typedef struct s_ {int a,b; } s; int add(s * l,s * r){返回l-> a + l-> b + r-> a + r-> b; } void init(s * v){v-> a = 1; v-> b = 2; } ...

回答 1 投票 0

什么scanf(“%d”,数组+ i);确实

void get_elemnts(int * array,int max_index){for(int i = 0; i

回答 2 投票 0

c:将给定序列的字节解释为int16_t值并将它们求和

我试图找出如何在给定位置开始的数据块中,将连续字节添加到一定长度,方法是将它们按类型转换为带符号的16位整数(int16_t)。数字可以是...

回答 1 投票 0

为什么第二个数字14的值比第一个数字大?

我在带有gcc 7.5.0的32位计算机中运行了C程序。为什么第二个数字14的值比第一个数字大? #include int main(void){int a [5]; printf(“%p \ n”,...

回答 2 投票 0

指针算法的工作原理

int a = 10; int * pa; pa =&a; int b = 5; * pa ++ = b ++; printf(“%d%d”,* pa,b);这给出了输出:6 6而下面的代码片段:int a = 10; int * pa; pa =&a; int b = 5; * pa ++ = b ++; printf(...

回答 2 投票 -1

变量类型如何影响C语言中的指针算术工作?

我在理解指针的算法时遇到麻烦。令int B = 0,* p =&B,** V =&p并且sizeof(int)= 4,sizeof(* int)= 8指令(* V)[1]做什么?对我来说,我看到的是(* V)[1]是...

回答 2 投票 2

是否有解决方法来限制C ++中使用智能指针的指针算术?

我正在一个项目上,不能使用括号表示法,但必须对数组使用智能指针。但是,正如我发现的那样,智能指针不允许使用指针算术。是否有...

回答 1 投票 0


指向数组第一个元素之前的指针

在C语言中,当指针指向同一数组或数组末尾的一个元素时,算术和比较的定义就很好。那在...

回答 2 投票 1

为什么在gcc中允许使用空指针算法?

以下代码是使用gcc编译的,尽管void ptr算法不是标准的:int main(){int a = 5; void * b =(void *)&a; b ++; }

回答 2 投票 2

使用指针符号打印字符数组

我知道对于给定的整数数组,即指向该整数数组的指针,我可以使用类似以下的方式访问整数数组:int main(){int x [4] = {0,1,2,3}; int * ptr; ptr = x; for(...

回答 1 投票 0

不明白为什么while(* ptr ++)为0值(字符串终止符)进入while循环

我对以下一些无关紧要的示例代码有问题:(在Visual Studio 2015上)请忽略指向文本常量,纽维尔上可能出现的警告或错误的部分...

回答 1 投票 0

(char *)NULL-(char *)NULL未定义行为?

((char *)NULL-(char *)NULL)是UB吗?海事组织的答案在这里并非无关紧要。有什么想法吗?实验的Godbolt链接https://godbolt.org/z/zgVGk9 PS我不是要添加......>

回答 2 投票 4

为什么不建议在C语言中使用指针进行数组访问

我正在学习C编程,并且在线浏览了本教程,该状态表明,您应该始终总是尽可能多地使用[]运算符,而不是指针算术。 https://www.cs.swarthmore ....

回答 2 投票 1

如何确定我是否使用了过度括号?

我目前正在尝试避免使用C语言的指针算术来编写模拟器。通常,如果在C中的指针上加1,则会改为添加指向对象的大小。但是,我是...

回答 2 投票 1

a + i和a [i]之间有什么区别

我尝试使用二维字符数组存储字符串,然后我想使用功能strcmp比较两个相邻的字符串。这是代码,它是成功的代码。 #include

回答 1 投票 1

© www.soinside.com 2019 - 2024. All rights reserved.