当前位置:首页 » 编程语言 » c语言编程运行时出错死机
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言编程运行时出错死机

发布时间: 2022-06-15 22:38:41

1. c语言编程时编译组建都没问题但是运行崩溃了

你的参数传递的不对,max和min已经是指针了,在加上*号就不是指针了。调用fun函数的时候直接传max和min就行,不用带*号。使用&符号传递时虽然满足了类型的要求,但是实际是对指针再次取地址了,参数内容也不对。

2. C语言编程出现运行错误,为什么,应该怎么改

删除第18行
把第17行改成: int t=0,b=0,i;
第15行的*p改成*a
第12行的*p改成a
删除第7行

3. c语言字符串编程,为什么这个程序运行会崩溃

char word[]=""是声明了一个长度为1的char类型数组,而在调用scanf函数的时候自然会溢出崩溃。
我写了一个程序应该能有

#include <stdio.h>

int main()
{
char ch; //每次读取字符的buffer
int count = 0; //单词长度

while(1)
{
scanf("%c", &ch); //读取字符
if(ch == '.')
{
//如果读取的字符为‘.’则打印出最后一个单词的长度并跳出循环结束程序
printf("\t:%d\n", count);
break;
} else
{
if(ch == ' ')
{
//如果读取的字符为‘ ’则打印出当前单词的长度,并归零count
printf("\t:%d\n", count);
count = 0;
} else
{
//如果读取的字符为其他符号则打印出当前符号,并将单词长度+1
printf("%c", ch);
count ++;
}
}
}

return 0;
}

4. 用tc运行c语言程序时死机了怎么办怎么调试

是编译时死机还是运行时?
如果是运行时死机,请查看你的循环语句是否有问题,死循环了。
还有一种可能,指针对象没有free掉,造成内存溢出。

5. 如何解决编程C语言运行后软件突然卡死的现象

突然卡死而不是崩溃.
说明代码中存在死循环或者死锁(多线程), 或者是某个操作耗时太多而导致的伪卡死.
可以开启调试模式,单步跟踪, 检查卡死在哪步中.
然后再针对修改.

6. C语言 程序运行到一半告诉我出现一个问题导致程序停止工作

有点儿意思。原因却出乎意料的简单。

char *rwtab[27]={"main","if","then","while","do"," static","int",
" double","struct","break","else","long","switch","case",
"typedef","char","return","const","float","short","continue",
"for","void","sizeof","default","do"};

少了一项,只有26项,rwtab[26]是空指针,访问到它时,就出错了。错误提示如下:

我没有修改这一句的时候,在你指出出错的地方加了下面一句:

for(n=0;n<27;n++)
if(strcmp(token,rwtab[n])==0)//比较是否关键字
{
printf("Cathch a key-word "); //
}

出错了,提示信息如下:

我用你的程序做a.txt,生成文件b.txt,c.txt,今天不知什么情况,不能上传

为什么这样?很玄妙:

rwtab数组少一项,rwtab[26]会引用一个空指针,产生错误。这儿没有语句时,循环没有实质性语句,编译程序优化, 不会编译这个循环的语句,程序中根本没有这几句的内容,因而不会出错。有了语句,就不能省略了,就出错了。

就是这样简单。

另外,你的程序必须当做C++程序编译,否则通不过。C不允许在有实质语句之后定义变量,变量说明要全部放到相应段的最前面,也不支持//注释。我是用DEVC++编译成功的,用WINTC编译失败。

7. c语言运行错误

c1跟c2都是单个字符,但是你在输入的时候,用的是scanf输出,中间用空格键隔开的,而空格也是一个字符,因此在输入y以后,你再次输入的空格被c1存储,即相当于c1c2原来的存储量前移,所以导致c1无输出,c2取代c1的值