On 2015-03-19 at 09:41, Walter Bright wrote:
On 3/18/2015 4:41 PM, Walter Bright wrote:
#include <stdbool.h>
#include <stdio.h>

typedef long T;
bool find(T *array, size_t dim, T t) {
  int i;
  for (i = 0; i <= dim; i++);
  {
     int v = array[i];
     if (v == t)
         return true;
  }
}

Bugs:

1. i should be size_t
2. <= should be <
3. extraneous ;
4. v should be type T
5. missing return

Two more things, I believe, but they aren't really internal bugs of find:
a null array or array > 2GB on 32-bit that would cause negative indexing:

assert(array != 0);
assert(dim <= PTRDIFF_MAX);

Reply via email to