一个小问题:如何控制printf的打印格式,保证输出字符对齐?
比如:
  我想保证整形数末尾对齐:
   100
    99
    98
     .
     .
     .
     .
     3
     2
     1   
应该如何写%d?
我试过%3d,可是不成功。

解决方案 »

  1.   

    是下面这堆码,对不齐只能是m_vfpAxis[i].x + npnx, m_vfpAxis[i].y + npny的问题吗?
    for (i = 0; i < m_nperiod_amnt; i++)
    {
    if (0 == i % ncalPeriod)
    {
    s.Format("%3d", ncalValue * i / ncalPeriod + ncalBegin);
    pMydc->TextOut(m_vfpAxis[i].x + npnx, m_vfpAxis[i].y + npny, s);
    }
    }
      

  2.   

    char a[100];
    int j = 0;
    for(int i = 0; i<=100; i += 5) 
    {
    j++;
    sprintf(a,"%3d",i);
    pDC->SetTextAlign(TA_RIGHT);
    pDC->TextOut(100,15*j,a);
    }
    看是不是你要的效果。