torture/t_strappend.c

説明を見る。
00001 /*
00002  * Copyright (C) 2005 by Volker Lendecke
00003  *
00004  * Test harness for sprintf_append
00005  */
00006 
00007 #include "includes.h"
00008 #include <assert.h>
00009 
00010 int main(int argc, char *argv[])
00011 {
00012         TALLOC_CTX *mem_ctx;
00013         char *string = NULL;
00014         int len = 0;
00015         int bufsize = 4;
00016         int i;
00017 
00018         mem_ctx = talloc_init("t_strappend");
00019         if (mem_ctx == NULL) {
00020                 fprintf(stderr, "talloc_init failed\n");
00021                 return 1;
00022         }
00023 
00024         sprintf_append(mem_ctx, &string, &len, &bufsize, "");
00025         assert(strlen(string) == len);
00026         sprintf_append(mem_ctx, &string, &len, &bufsize, "");
00027         assert(strlen(string) == len);
00028         sprintf_append(mem_ctx, &string, &len, &bufsize,
00029                        "01234567890123456789012345678901234567890123456789\n");
00030         assert(strlen(string) == len);
00031 
00032 
00033         for (i=0; i<(100000); i++) {
00034                 if (i%1000 == 0) {
00035                         printf("%d %d\r", i, bufsize);
00036                         fflush(stdout);
00037                 }
00038                 sprintf_append(mem_ctx, &string, &len, &bufsize, "%d\n", i);
00039                 assert(strlen(string) == len);
00040         }
00041 
00042         talloc_destroy(mem_ctx);
00043 
00044         return 0;
00045 }

Sambaに対してSat Aug 29 21:23:27 2009に生成されました。  doxygen 1.4.7