#include <stdio.h>
#include <string.h>
int main(void) {
char string[] = " +--\\\n"
" | \\\n"
" | \\\n"
" +---| \\\n"
" +---| \\\n"
"+ | \\\n"
"|\\ +---------------------------------+\\\n"
"| \\ | %d| %d| %d| %d| %d| | \\\n"
"| \\| %d| %d| %d| %d| %d| | |\\\n"
"| | %d| %d| %d| %d| %d| | | \\\n"
"|---| | | \\\n"
"|---| | | /\n"
"| | %d| %d| %d| %d| %d| | | /\n"
"| /| %d| %d| %d| %d| %d| | |/\n"
"| / | %d| %d| %d| %d| %d| | /\n"
"|/ +---------------------------------+/\n"
"+ | /\n"
" +---| /\n"
" +---| /\n"
" | /\n"
" | /\n"
" +--/\n" ;
int param[30];
const size_t param_count = 30;
for( size_t i = 0 ; i < param_count ; i++ )
{
param[i] = (int)i ;
}
char* first = string;
char* last = string;
for( size_t i = 0 ; i < param_count ; i++ )
{
last
= strchr( last
, '%' ); //first the specifier last += 2 ; //skip the specifier
const char temp = *last;
*last = '\0'; //terminate the 'sub-string'
*last = temp; //restore the 'string'
first = last;
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4KCmludCBtYWluKHZvaWQpIHsKCQoJY2hhciBzdHJpbmdbXSA9ICIgICAgICAgICAgICAgICAgICArLS1cXFxuIgoiICAgICAgICAgICAgICAgICAgfCAgIFxcXG4iCiIgICAgICAgICAgICAgICAgICB8ICAgIFxcXG4iCiIgICAgICAgICAgICAgICstLS18ICAgICBcXFxuIgoiICAgICAgICAgICAgICArLS0tfCAgICAgIFxcXG4iCiIrICAgICAgICAgICAgICAgICB8ICAgICAgIFxcXG4iCiJ8XFwgICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rXFxcbiIKInwgXFwgfCAlZHwgICAgJWR8ICAgICVkfCAgICAlZHwgICAgJWR8IHwgXFxcbiIKInwgIFxcfCAlZHwgICAgJWR8ICAgICVkfCAgICAlZHwgICAgJWR8IHwgfFxcXG4iCiJ8ICAgfCAlZHwgICAgJWR8ICAgICVkfCAgICAlZHwgICAgJWR8IHwgfCBcXFxuIgoifC0tLXwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHwgIFxcXG4iCiJ8LS0tfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgfCAgL1xuIgoifCAgIHwgJWR8ICAgICVkfCAgICAlZHwgICAgJWR8ICAgICVkfCB8IHwgL1xuIgoifCAgL3wgJWR8ICAgICVkfCAgICAlZHwgICAgJWR8ICAgICVkfCB8IHwvXG4iCiJ8IC8gfCAlZHwgICAgJWR8ICAgICVkfCAgICAlZHwgICAgJWR8IHwgL1xuIgoifC8gICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rL1xuIgoiKyAgICAgICAgICAgICAgICAgfCAgICAgICAvXG4iCiIgICAgICAgICAgICAgICstLS18ICAgICAgL1xuIgoiICAgICAgICAgICAgICArLS0tfCAgICAgL1xuIgoiICAgICAgICAgICAgICAgICAgfCAgICAvXG4iCiIgICAgICAgICAgICAgICAgICB8ICAgL1xuIgoiICAgICAgICAgICAgICAgICAgKy0tL1xuIiA7CgkKCWludCBwYXJhbVszMF07CmNvbnN0IHNpemVfdCBwYXJhbV9jb3VudCA9IDMwOwkKCWZvciggc2l6ZV90IGkgPSAwIDsgaSA8IHBhcmFtX2NvdW50IDsgaSsrICkKCXsKCQlwYXJhbVtpXSA9IChpbnQpaSA7Cgl9CgkKCiBjaGFyKiBmaXJzdCA9IHN0cmluZzsKIGNoYXIqIGxhc3QgPSBzdHJpbmc7CmZvciggc2l6ZV90IGkgPSAwIDsgaSA8IHBhcmFtX2NvdW50IDsgaSsrICkKewogICAgbGFzdCA9IHN0cmNociggbGFzdCAsICclJyApOyAvL2ZpcnN0IHRoZSBzcGVjaWZpZXIgCiAgICBsYXN0ICs9IDIgOyAgLy9za2lwIHRoZSBzcGVjaWZpZXIKICAgIGNvbnN0IGNoYXIgdGVtcCA9ICpsYXN0OwogICAgKmxhc3QgPSAnXDAnOyAgLy90ZXJtaW5hdGUgdGhlICdzdWItc3RyaW5nJwogICAgcHJpbnRmKCBmaXJzdCAsIHBhcmFtW2ldICk7CiAgICAqbGFzdCA9IHRlbXA7ICAgLy9yZXN0b3JlIHRoZSAnc3RyaW5nJwogICAgZmlyc3QgPSBsYXN0Owp9CnByaW50ZiggZmlyc3QgKTsKCXJldHVybiAwOwp9Cg==