#include <stdio.h>
#include<malloc.h>
#include<stdarg.h>
#include<stdlib.h>

void print(char* buf,...)
{
 int i,iC;
 int iTemp,C,dC;
 char argBuf[128];
 char* Buf;
 int dBuf;
 int In;
 char* sBuf;
 float fBuf;

 int bufMt=0;
 va_list pos;
 for (i = 0, iC = 0; buf[i] != NULL; i++)
 {
  if (buf[i] == '%')
  {
   iC++;
  }
 } 
 va_start(pos, iC);
 for (i = 0, iC = 0; buf[i] != NULL; i++)
 {
  bufMt = -2;
  if (buf[i] == '%')
  {
   switch (buf[i + 1])
   {
   case 'd':

    dBuf = va_arg(pos, int);// 여기서 가변인수값이 안들어오는데 뭐가문제냐

    for (In = 0, dC = i; buf[dC] != NULL; dC++, In++)
    {
     argBuf[In] = buf[dC];
    }
    argBuf[In+1] = NULL;
    C = 1;
    iTemp = dBuf;

    while (iTemp /= 10)
    {
     C++;
    }
    Buf = (char*)malloc(C + 1);
    Buf[C] = NULL;
    for (iTemp = 0; C > 0; C--, iTemp++)
    {

     Buf[C - 1] = (dBuf % 10) + '0';
     dBuf /= 10;
    }
    for (int Ins = 0; Buf[Ins] != NULL; Ins++,i++)
    {
     buf[i] = Buf[Ins];
    }
    for (In = 0; argBuf[In] != NULL; In++)
    {
     buf[i + In + 1] = argBuf[In];
    }

   }
   
   
  }
 }
 va_end(pos);
 printf(buf);
}
void main()
{
 int a=244;
 print("%d",a);
}


뭐가 문제냐 ㅅㅂ;

좀도와줘 내가 코딩한지 1년밖에안되서 가독성극혐인건 참아줘