小编cou*_*mer的帖子

计算字符数组中的1的数量

我试图用递归类型程序计算表示二进制数的字符数组中的1的数量.但是,似乎我的程序只是计算数组中的字符数.我不知道我是否只是在比较错误与否,但我似乎无法找到问题

#include <stdio.h>
# include <stdlib.h>
#include <string.h>
#define SIZE 20

int determine (char array[SIZE], int count, int track );

int main()
{ 
int answer = 0; 
char input[SIZE]={"1001001"};
int count = 0;
int track = 0;

answer = determine(input, count, track);

 printf("The number of 1's is %d ", answer);

system("PAUSE");
return 0;
 }

 int determine(char array[], int count, int track)
{   

 if (array[track] != '\0')
 {
    if ( array[track] == '1');
    {
         count++;
    }
    return determine(array, count, track = …
Run Code Online (Sandbox Code Playgroud)

c arrays comparison character

3
推荐指数
1
解决办法
555
查看次数

迭代器和指针之间有什么区别

所以我编写了这个程序并且它可以工作,但我被告知我需要使用迭代器在我编写的函数中移动.我目前正在使用指针,但我认为它们基本上是相同的东西.如果有区别,迭代器是如何使用的?

更新:所以我理解的是,与指针不同,迭代器将移动到列表中的下一个项目,即使该项目不是下一个顺序存储在内存中?它是否正确?但那它怎么知道在哪里移动?我编写了一个添加和删除节点的二叉树.在每个节点中都有指向两个子节点的指针(或者只指向一个子节点),也指向指向父节点的指针.在函数中,我递归调用我正在使用的函数并传递新指针.我有一种感觉,用迭代器替换我所拥有的东西应该很容易,但我仍然不确定.

更新2:我一直在做更多阅读并尝试一些例子,现在我对如何声明迭代器感到困惑.我遇到的所有事情都像我需要为迭代器创建另一个类.但是,当我尝试所有我得到的是编译器错误列表.任何帮助,将不胜感激.谢谢

c++ iterator

2
推荐指数
1
解决办法
4487
查看次数

标签 统计

arrays ×1

c ×1

c++ ×1

character ×1

comparison ×1

iterator ×1