lkml.org 
[lkml]   [2000]   [Feb]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: string-486.h?
Also sprach Ben Kosse:
} > Well the problem is bad 'C' code. It's not the compiler's fault. It's
} > just doing what it's told to do.
} >
} > char str[12]="mystring";
} >
} > declares a string on the stack with room for 12 bytes. However it is
} > initialized with only 9 (8 characters + the implied \0). So the rest
} > of the area has to be zeroed, which the compiler does.
} No it doesn't. For all C is required to care about, it could be stored as:
} "mystring\0bla" The definition is 12 bytes on the stack, the first nine being
} "mystring\0".
}
Depends on where the char str[12] is placed. If it is global, then it is
zeroed cause it's static...If it's an auto, then it can (and probably
does) have garbage after the terminating \0.
--
|| Bill Wendling wendling@ganymede.isdn.uiuc.edu

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:56    [from the cache]
©2003-2011 Jasper Spaans