Are prototypes required for all functions in C89, C90 or C99?
问题 To be truly standards-compliant, must all functions in C (except for main) have a prototype, even if they are only used after their definition in the same translation unit? 回答1: It depends on what you mean by 'truly standards compliant'. However, the short answer is "it is a good idea to ensure that all functions have a prototype in scope before being used". A more qualified answer notes that if the function accepts variable arguments (notably the printf() family of functions), then a