5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

七行プログラミング

425 :デフォルトの名無しさん:01/08/28 06:34 ID:XumLL8YM
とりあえず、7行。
だれか、幅とflagにも対応してください

#include <stdarg.h>
typedef unsigned u;typedef char c;int vsp(c*b,c*f,...){c x[9]="%csuxodi",t,s[99
],*o,*h;int p,i,n,r;u d;va_list v;va_start(v,f);h=b;do{if(*f=='%'){p=i=0;x[8]=t
=*++f;while(x[i++]!=t);if(i<3)*b++=(i==1)?37:va_arg(v,c);else if(i<4){o=va_arg(
v,c*);while(*b=*o++)b++;}else{n=va_arg(v,int);r=i==5?16:i==6?8:10;if(i==7||i==8
)if(n<0)*b++='-',n=-n;d=n;while(d)s[p++]="0123456789abcdef"[d%r],d/=r;while(*b
++=s[--p],p);}}else*b++=*f;}while(*f++);va_end(v);return b-h-1;}

#include <stdio.h>
// テストドライバ
int main()
{
  int i;
  char buf[512];
  i = vsp(buf, "%%%s%s%s%c %d %u %x %i %u %o", "test1 ", "test2 ", "test3", 'Z', -123, 123, 0x123, -123, -123, 83);
  printf("\n%d:%s\n", i, buf);
  return 0;
}

362 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)