c - 如何使用指向字符数组的指针一次访问一个数组元素?
问题描述
所以,在下面的代码中,我想做的是subArr
在arr
. 但是正如您所看到的,我无法for
正确使用循环,以便我可以开始比较。我应该将什么作为在相应位置访问该数组元素的每个字符(例如:cream
在 position 0
)的令人满意的条件?然后subArr
逐个字符比较,看是否subArr
存在于arr
我的最终目标是找出是否subArr
存在于arr
。如果是那么return 1
,否则return 0
我不会用strstr()
。
int myStrStr (char * arr, char * subArr, char * buffer) {
// printf("%s\n", arr);
// printf("%s\n", subArr);
// printf("%s", buffer = subArr);
int count = 0;
for(int i = 0; arr[i] != '\0'; i++) {
//for(int j = 0; needle[j] != '\0'; j++) {
if(arr[i] == subArr[i]) {
buffer[count] = arr[i];
count++;
printf("Array: %c\n", arr[i]);
printf("SubArray: %c\n", subArr[j]);
//printf("%s", buffer = subArr);
//}
}
//printf("\nBuffer: %s\n",buffer);
int result = strcmp(buffer, needle);
if(result == 0) {
return 1;
} else {
return 0;
}
}
int main() {
char arr[][10] = {"cream","factory","camel","crosses","eating","cake"};
char subArr[][10] = {"cream","at","am","cross","in","kk"};
char buffer[160];
int answer1 = myStrStr(arr[0],subArr[0], buffer);
int answer2 = myStrStr(arr[1],subArr[1], buffer);
int answer3 = myStrStr(arr[2],subArr[2], buffer);
return 0;
}
解决方案
这是一个简单(粗略)的例子来澄清事情:
#include<stdio.h>
int num; //SECOND DIMENSION OF THE 2D ARRAY
void fun(char c[][num])
{
for(int i=0;c[i][0]!='\0';++i)
printf("%s\n",c[i]); //c[i] MEANS STRING AT Ith INDEX, C[2] = "XYZ"
}
int main(void)
{
char c[][10]={"hello","world","xyz"};
num = sizeof(c[0]); //NO. OS SEPARATE STRINGS POSSIBLE
fun(c);
return 0;
}
输出:
hello
world
xyz
在函数中fun
,当我们说c[i]
then 我们正在访问第i个索引处的字符串时,上面示例中的示例是- 现在如果您想比较两个数组数组的元素,那么您可以通过索引访问每个字符串索引并使用,例如:c[1]
world
strcmp
strcmp(subArr[j],arr[i])
两者subArr[0]
和arr[0]
都是相同的,即cream
在问题中,因此当我们使用strcmp
它时,它将返回0表示两者subArr[0]
和arr[0]
是相同的。
推荐阅读
- css - 在 React Native 中将 View 置于其他 View 之上
- c# - CommunicationException:向第三方 WebService 发出 HTTP 请求 (HTTP.SYS) 时,客户端发生错误
- windows - 如何找出程序何时启动然后通过cmd批处理文件关闭,然后在程序关闭时创建一个rem
- python - 是否可以在不写入文件的情况下跟踪 Python 脚本运行了多少次?
- wpf - 如何获取 DataGridTextColumn 发件人的数据网格父级
- mobx - 处理 mobx 中的输入变化
- php - 刷新div后Popover停止工作?
- python - 使用 python 或 bash 在多行文件中查找和替换模式
- php - 使用 ajax 在循环中填充表单字段
- javascript - 字符串文字第一个还是第二个串联?