自定义数据结构的设计与应用
1. 多数组程序改进与错误处理
在运行改进后的多数组程序时,它与之前版本类似,但有一个明显不同:输出每行后的额外回车符被移除了。下面是该程序的源代码:
#include <stdio.h>
#include <string.h>
#define kMaxDVDs 4
#define kMaxTitleLength 256
#define kError_printf -1
#define kError_fgets -2
#define kError_none 0
int PrintDVDTitle( int dvdNum, char title[][ kMaxTitleLength ] );
void ReplaceReturnAtEndOfString( char *theString );
int main (int argc, const char * argv[]) {
char title[ kMaxDVDs ][ kMaxTitleLength ];
short dvdNum;
char *result;
int error;
error = printf( "The title array takes up %ld bytes of memory.\n\n",
sizeof( title ) );
if ( error < 0 )
return kError_