Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 7/20/83; site ihnss.UUCP Path: utzoo!linus!decvax!harpo!floyd!vax135!ariel!hou5f!orion!houca!hogpc!houxm!ihnp4!ihnss!knudsen From: knudsen@ihnss.UUCP Newsgroups: net.lang.c Subject: Re: Initializing Vars in non-OS C systems Message-ID: <1618@ihnss.UUCP> Date: Fri, 22-Jul-83 13:31:38 EDT Article-I.D.: ihnss.1618 Posted: Fri Jul 22 13:31:38 1983 Date-Received: Sat, 23-Jul-83 02:28:48 EDT Organization: BTL Naperville, Il. Lines: 15 I write C code for 8086 systems with the .text and .data (constants of course) in ROM and the .bss in RAM. It has been my understanidng that our BTL C compiler (basic16) will initalize variables if & only if you say so in the declarations. There are two kinds: globals (declared outside any {}) that are explicitly assigned to .bss addresses and known by name to assemblers, loaders, linkers, and debuggers. The other kind, declared inside a procedure (inlucding main()), are just stack-frame and can't be traced. However, these get initialized (if you assk for it) on every call. I don't know whether globals can be init'ed or not; I always do these with code statements anyway. Question: does init'ing vars in declarations buy you anything in space or speed over doing it by actual statements in the body? mike k