有关有scanf及printf的一些误区及问题
2012-04-23 19:59
232 查看
今天我一直在调试自己的顺序表一个scanf语句代码如下:
当我输入lzm时,我通过调试才知道我所有输入的数全都是0,这时我无法理解,本来我输入了lzm为什么编译器把他们当作全是0来处理呢?
于是我自己有变了小的程序看看是不是scanf的问题或是printf问题,代码如下:
以下时我输入的一些数及产生的结果:
通过上面两个结果我似乎得出这么一个结论:
char格式的只能输出字母,而int类型的只能输出阿拉伯数字。
于是我有猜想如果时其他的输入的字符呢?
于是有:
于是乎产生了下面这个结果
于是我又对照这ascii输入字符,有如下:
从中我得出这么一个结论,在gcc编译器中如果某个数时int类型的那么它只能输出数字0-9,对于其他的字符它将输出0;
对于char类型的输出的除了输入阿拉伯数字外,其他的字符都能打印出来,而对于阿拉伯数字,起输出什么都没有:
于是乎我觉得这它不给力了,为什么int类型不行输出其他字符呢?为什么呢?我无赖,坐在电脑桌前一直想,int类型什么时候只能输出阿拉伯数字了,那么自然时数字干吗在
32位的机器上给每个int类型的字符分配四个字节,这不是浪费空间么?不就是一个数字么,跟其他的字符有什么区别吗?为什么给每个char类型的字符只分配一个字节,这
公平么?
我一直在猜想,,,,希望有解答。。。
printf("please input list:"); for(i = 0;i < MAX;i++){//如何解决除用%s以外其他方式来解决输入数组的问题 scanf("%d",&s[i]); if (s[i]== '\n') break; } printf("please choose: ")
当我输入lzm时,我通过调试才知道我所有输入的数全都是0,这时我无法理解,本来我输入了lzm为什么编译器把他们当作全是0来处理呢?
于是我自己有变了小的程序看看是不是scanf的问题或是printf问题,代码如下:
#include <stdio.h> main(){ char a; int c; printf("please input num:\n"); scanf("%c,%d",&a,&c); printf("the a and c 's result is:%c\n",a); printf("%d\n",c); }
以下时我输入的一些数及产生的结果:
please input num: a,a the a and c 's result is:a 0
please input num: a,1 the a and c 's result is:a 1
通过上面两个结果我似乎得出这么一个结论:
char格式的只能输出字母,而int类型的只能输出阿拉伯数字。
于是我有猜想如果时其他的输入的字符呢?
于是有:
please input num: (,} the a and c 's result is:( 0
于是乎产生了下面这个结果
于是我又对照这ascii输入字符,有如下:
please input num: a,48 the a and c 's result is:a 48
please input num: 48,a the a and c 's result is:4 0
please input num: %,^ the a and c 's result is:% 0
从中我得出这么一个结论,在gcc编译器中如果某个数时int类型的那么它只能输出数字0-9,对于其他的字符它将输出0;
对于char类型的输出的除了输入阿拉伯数字外,其他的字符都能打印出来,而对于阿拉伯数字,起输出什么都没有:
于是乎我觉得这它不给力了,为什么int类型不行输出其他字符呢?为什么呢?我无赖,坐在电脑桌前一直想,int类型什么时候只能输出阿拉伯数字了,那么自然时数字干吗在
32位的机器上给每个int类型的字符分配四个字节,这不是浪费空间么?不就是一个数字么,跟其他的字符有什么区别吗?为什么给每个char类型的字符只分配一个字节,这
公平么?
我一直在猜想,,,,希望有解答。。。
相关文章推荐
- 有关于scanf还有printf的一些用法及个人发现的一些问题
- 有关scanf的输入函数的一些问题
- 在使用hadoop中遇到的一些有关linux的问题
- 使用 Request.QueryString 接受参数时,跟编码有关的一些问题
- 使用 Request.QueryString 接受参数时,跟编码有关的一些问题
- 关于scanf和printf细节问题(格式控制)
- 有关UICollectionviewController的一些问题
- 有关STL使用上的一些注意事项。关于某些函数的参数问题。
- 有关copy关键字的一些问题
- 有关献血过程中的一些问题
- python中有关类编写过程中应该主要的一些问题
- 浅析printf和scanf的返回之问题
- JAVA中的protected(详解),以及和clone()方法有关的一些问题
- Cocos2d-x Sprite 执行 CCFade~ 这类透明度变化动作的一些有关问题
- 收集了一些有关网页设计的问题集
- 使用 Request.QueryString 接受参数时,跟编码有关的一些问题
- 有关"SELECT FOR UPDATE"的一些问题
- 笔记有关Java的一些问题
- [置顶] 专题:有关容斥原理和子集枚举的一些问题
- 有关vhdl的一些问题总结