一个字符串输入的错误
来源:互联网 发布:自控力 知乎 编辑:程序博客网 时间:2024/05/17 23:48
代码1:#include <stdio.h>int main(void){ char a[1] = {0}; scanf("%s",a); puts(a); return 0;}代码2:#include <stdio.h>int main(void){ char* a = NULL; scanf("%s",a); puts(a); return 0;}代码3:#include <stdio.h>int main(void){ char* a = 0x12ff80; scanf("%s",a); puts(a); return 0;}
char a[1] = {0};这样没出错是因为,数组a后面有部分空闲的内存,没用到,这个与编译器有关,一般是为了内存字节对齐,把输入字符串长点,一旦覆盖了后面的程序代码,就会出错。char* a = NULL;把a赋值null,a指向了系统内存地址,这个内存程序不能write,马上出错。
C仅保证 正确的代码一定可以得到正确的结果,于是 错误的代码不一定会出现"错误"的结果。
- 一个字符串输入的错误
- C++错误输入的处理--整型错误输入字符串
- 输入一个字符串,取出其中的整数
- 将一个输入的字符串进行逆序
- 输入的一个字符串按反序存放
- 输入一个带有若干空格的字符串
- 一个字符串输入程序
- 输入一个字符串,如何求最大重复出现的字符串
- 输入一个字符串,求出该字符串的字符集
- 输入一个字符串,求出该字符串包含的字符集合
- 输入一个字符串,计算字符串中子串出现的次数
- 输入一个字符串,计算字符串中子串出现的次数
- 输入一个字符串,删除出现次数最少的字符串。
- 输入一个字符串,计算字符串中子串出现的次数
- 输入一个字符串,计算字符串中子串出现的次数
- 输入一个字符串,计算字符串中子串出现的次数
- 一个数组下标错误引起的字符串错误
- 输入一个字符串的anagram的C#算法
- wmsys.wm_concat函数用法
- CoreData双向关系/删除规则
- 定位内核模块中导致内核崩溃的代码位置
- execl wait 应用
- 生产者消费者问题
- 一个字符串输入的错误
- asp.net 自定义控件(2种方法)
- Sql时间函数
- 强大的vim配置,让编程更随意
- 读者写者问题
- SQL Server 2012将数据导出为脚本
- js 强制刷新当前页面
- 100个windows平台C++开发错误之十一类
- 多个tomcat之间的session复制