C语言中经常遇到的问题:执行时显示进度条,然后卡住
2015-09-17 21:27
573 查看
int main(){ char str = "hello"; printf("str is: %s\n",str); }
这个极为简单的代码是我最近由于粗心写错了的,但是编译的时候不会报错。往往编译不报错的错误,但是运行的时候出错,是最让人无从下手检查的。而这一类问题大部分出在内存这块,像我这里简单的例子就是一个典型:
给一个字符类型的变量赋超过长度为1的多个字符,(把单个字符看作是字符数组的话)很显然超出数组长度。
对于整型数组,初始化的时候超出数组长度的赋值是会在编译时期报错
int main(){ int a[2] = {1,2,3}; }
编译时:error C2078: too many initializers
后续会补充更多遇到的这类问题,会更详细的分析,具体为什么程序执行的时候会中断。
上述这些仅作为个人积累,有错误,希望拍砖。
相关文章推荐
- c语言错误大全
- C语言中的switch语句
- C/C++堆栈详解
- 问题之编程语言_c语言_无符号计算
- C++基础知识总结----类的进阶知识点
- C语言 输入n,分别用*输出边长为n的实心菱形和空心菱形
- 黑马程序员-----------C语言基础-----------C语言实战(C语言版通讯录)
- C++带模板结构体 类型重定义*
- C++的6种位运算符
- C++容器deque
- C++容器比较
- C语言预处理那些事
- C++库调用C#的回调函数异常退出解决
- C语言实现封装、继承和多态
- C++中的虚函数
- 【C++】单例模式
- Visual C++ Tips: 关于 LNK2038 编译错误
- 函数指针基础及应用(正向调用、动态库升级成框架)
- c++ primer 学习笔记-第十五章
- C语言之空宏