【问题标题】:Search values using pointers使用指针搜索值
【发布时间】:2015-11-02 15:30:54
【问题描述】:
int searchval(int *arr, int size, int key)
{
  int val;

  for(int y = 0 ; y < size ; y ++  )
  {

    cout<<arr[y]<<endl; // Re-list the array of numbers
    if(arr[y] == key)
      int val =  key;
  }
  return val;

}

我随机生成了这些数字并将它们放入main() 函数的数组中。问题在于搜索算法。我正在使用指针,所以我猜我的语法是关闭的。我不确定问题是什么,但我觉得这很容易。谁能帮帮我?

【问题讨论】:

  • 您遇到了什么问题?
  • 开启更多编译器警告。
  • 当我输入数组中的数字时,searchval 函数一直返回 0。我该如何解决?

标签: c++ arrays pointers search


【解决方案1】:

您有两个不同的变量,均名为 valif 语句中的那个仅在该范围内。

简单去掉if里面的val变量的声明,只用赋值:

if (...)
    val = key;

【讨论】:

  • 谢谢!这就是问题
  • 另外:您可能想要val = y 而不是val = key
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多