C语言中为什么会出现runtime error?
展开全部
从代码上看 感觉你是初学者吧 有不少基础的概念都没有弄通 建议多看一下C基础 比如类型 输入输出这方面的
大致改一下你的代码
#include <stdio.h>
int main(void)
{
char *n = "test string for n\n", y = "test string for y\n";
//对于字符串必须定义成char *或者char[]类型 用=赋值必须在定义时 如果在运行中要改变其值 则必须定义为char []型,同时用strcpy函数进行赋值
int a;
scanf("%d", &a);//用scanf输入整型值时 变量a前要加& 初学的时候记住就可以了 不需要理解
//学指针和函数后 你会明白为什么要加&
//以下部分没有错误
if(a<2)printf("%s",n);
else printf("%s", y);
return 0;
}
展开全部
n和y应该这样定义:char *n = "字符串";char *y = "字符串";
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
问题就在于你的y和n都是整形,但printf里面却用了%s
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的n,y为何定义为int呢?不是char*?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询