This can't be a TurboC bug can it?

CRN at BYUVM.BITNET CRN at BYUVM.BITNET
Wed Aug 1 02:35:11 AEST 1990


I am having a VERY weird problem in TurboC.  My code looks
something like this:


typedef struct{
   . . .
   char   *str;
int    type;
}FIELD;


int proc(FIELD *fld)
{
   . . .
   if(!valid_str(fld->str))
      return ERROR;
   . . .
}

Here's the weird part.  Using Turbo Debugger I have found that my
program crashes right after this statement.  I perform a watch on
fld, fld->str, fld->type.  Before the call to valid_str() all of the
variables are fine.  Upon return from valid_str(), however, the
pointer, fld, is screwed up which of course in turn screws up
fld->str and fld->type.   I assume that fld is being overwritten
somehow but I can't figure out how.  Valid_str() does nothing to
manipulate fld and the only function that valid_str() calls is
atoi() (yes, I do include stdlib.h).  If anyone has any pointers
for me I'd sure appreciate hearing them.

-- Cory
(crn at byuvm.bitnet)



More information about the Comp.lang.c mailing list