如何将指针用于数组而不是括号 [英] How to use pointers for array instead of brackets

查看:91
本文介绍了如何将指针用于数组而不是括号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试学习如何在C中使用指针,并且试图获得与& input [71]和& input [i];等效的对象。

I am trying to learn how to use pointers in C and I'm trying to get the equivalents for &input[71] and &input[i];

我尝试了 if(*(input + i)-arrayEnd)== 0),它告诉我我有一个 int vs char * 比较。

I have tried if (*(input+i) - arrayEnd) == 0) and it tells me I have an int vs char * comparison.

char input[72];
char *arrayEnd = &input[71];
if((&input[i] - arrayEnd) == 0)


推荐答案


我尝试过if(*(input + i)-arrayEnd)== 0),它告诉我我有一个int vs char *比较

I have tried if (*(input+i) - arrayEnd) == 0) and it tells me I have an int vs char * comparison

是。您正在进行 int char * 的比较。 *(input + i)表示您正在取消引用地址(input + i)的值。

Yes. You are doing an int vs char * comparison. *(input+i) means you are dereferencing the value at the address (input+i).


如何使用数组指针而不是括号

How to use pointers for array instead of brackets

改为尝试

if( ((input + i) - arrayEnd) == 0 )

这篇关于如何将指针用于数组而不是括号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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