为什么用printf函数运行时会错位

#include<stdio.h>

int main()
{
	printf("\n\
	    @\n\
	   / \\\n\
	   * *\n\
	   * *\n\
	   * *\n\
	 * * * *\n\
   * * * * * *\n\
 * * * * * * * *\n\
       * *\n\
       * *\n\
       * *\n\
     * * * *\n\
   * * * * * *\n ");
   
   return 0;
   
}

 

把源码中的tab制表符全用空格替换

本身每一行前面就有空格,你用这种方式换行,编译估计就以为前面的空格并不是字符串里。图形对齐之后,把需要的直接接在字符串后面不要换行试试