c语言编译形成exe文件后,运行显示exe已停止工作。求大神告知
#include<stdio.h>main(){printf("a=%4d,b=-6.2f,c=%c,d=%s",12,3.456,'A',"hello");}...
#include <stdio.h>
main()
{
printf("a=%4d,b=-6.2f,c=%c,d=%s",12,3.456,'A',"hello");
} 展开
main()
{
printf("a=%4d,b=-6.2f,c=%c,d=%s",12,3.456,'A',"hello");
} 展开
3个回答
展开全部
应该改成这样
#include <stdio.h>
main()
{
printf("a=%4d,b=-%6.2f,c=%c,d=%s",12,3.456,'A',"hello");
}
或者这样
#include <stdio.h>
main()
{
printf("a=%4d,b=-6.2f,c=%c,d=%s",12,3.456,"A","hello");
}
都不会出错
输出浮点数的时候漏了%,导致3.45被当成字符输出了,A被当成字符串输出了,而printf输出字符串是根据结尾的\0来停止的,单引号的A后面不会有\0所以printf访问越界了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询