c语言中stdio.hc语言 t是什么意思思

C语言中的getc和fgetc有啥不同_百度知道
C语言中的getc和fgetc有啥不同
(简单看看似乎一样),遇到苑叮曹杆丨访鄂恼好多很像的函数名,比如getc和fgetc,他们效果一样吗,有什么不一样的?谢谢最近学习输入输出
getc的相关知识
按默认排序
其他3条回答
参考:///reference/clibrary/cstdio/getc/" target="_blank">http,只是getc在有些库中:///reference/clibrary/cstdio/getc/getc and fgetc are equivalent,是宏定义getc和fgetc在功能上是一样的:<a href="http, except that getc m梗桓弟教郗寄辊芍ay be implemented as a macro in some libraries
getc()是fgetc()的一个子集:即getc()等价于fgetc(stdin)而fgetc(任意文件流或设备流)是一个可从任意文件或设备中读字符有的书上说getc()就是fgetc(stdin)的宏定义----可以不必弄得那么明白
fgetc读缓存区的按键,假如缓存区里面有五个键,它可以一一读出来,getc读慢了,某个键会丢了,你可以做个很长的延时,然后快速按几个键,看看是不是都读取到了。我的理解是这样的
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁c语言中的#include是什么意思?_百度知道
c语言中的#include是什么意思?
h是什么文件在c语言中,扩展名为
提问者采纳
因为我已经在另一个文件中包含它了 而且在程序中我要输出 ABC 就可以用PR代表printf 如;*程序中的PR将在编译时自动转化为printf*&#47,当编译时就将头文件包含进去; 就可以免掉#include &*程序中的SC将在编译时自动转化为scanf*&#47:&#92; 然后我把它另存为 c. 包含的文件如果是用&abc&quot.h文件就是头文件;c: 我做一个头文件 #include &lt.h 那么以后我写程序的时候只要在开始包含 #include &quot.h&gt: PR(&&stdio.h&gt,SC也代表那么它在用户文件夹中寻找这个头文件. 如果要直接给出路径就用&quot,比如#include是一个包含程序的命令 先跟你说,其实它是为了方便用的.h&).h是包含关于C程序的输入输出的各种信息:&#92.h文件 ; #define 兀良盾剐墉溉乎炮PR printf / 用样,我们常用的 #define SC scanf /&quot
其他类似问题
include的相关知识
按默认排序
其他3条回答
h是 头文件扩展名为..#include 是包含
包含文件的意思,.h的文件是C语言的头文件
包含头文件
等待您来回答
您可能关注的推广回答者:
下载知道APP
随时随地咨询
出门在外也不愁C语言中的编码预处理的命令&stdio.h&是什么意思!_百度知道
C语言中的编码预处理的命令&stdio.h&是什么意思!
先在用户目录(#include&
的意思是 包含了一个名叫stdio.h&gt,再到标准库目录查找.h&quot.h.c的目录) 查找stdio.h薅磁槽断噩登遏沦&只在标准库目录查找stdio.h&gt.h的头文件
其他类似问题
c语言的相关知识
其他2条回答
上psuvtk520正解
比如你写了一些代码放在&you.h&然后你保存了,再然后你在别的源文件中#include&you.h&就等同于你把you.h中的代码直接写到了现有的源文件当中去,谢谢
等待您来回答
您可能关注的推广回答者:
下载知道APP
随时随地咨询
出门在外也不愁编写C语言程序时必须有#include&stdio.h&这一行吗?为什么有时候不需要?
如果不一样,能不能具体讲解一下。如果一样,作用是什么?零基础的新人。最好回答比较简单易懂。谢谢啦。
按票数排序
补充一下…stdio 全称,standard input&output.h的意思是 头文件,header file刚学的话可以不深究这个东西,只要记住:如果要用到标准函数库中的输入输出函数,应该在文本模块的开头加上这个
#include 是一种预编译指令。C 语言的做法是,在真正处理程序的语义之前,先做一遍预编译,包括去掉注释和处理预编译指令。#include 这个指令的作用是把另一个文件的内容引入到本文件中,在许多情况下这个功能可以方便代码的管理,也节省了磁盘空间。#include&stdio.h& 指令的作用是引入 stdio.h 文件,它是 C 语言标准库中的一个文件,声明了跟标准输入输出相关的函数和变量。你也可以自己声明你需要的 stdio.h 里面的函数,效果是一样的。main 函数被称为是入口函数,但是 C 语言毕竟只是产生代码的工具,你完全可以从别处开始执行(取决于你怎么利用这些代码)。例如在 Windows 编程中我们通常使用 WinMain 函数作为程序的入口。再比如在编写操作系统时,常规意义上的入口并不存在,我们要使用额外的手段定义代码从何处开始执行。
前面的答案已经解释了。那我就从授以渔的方式解释一遍。1. 小明打算写一个回声机程序,它的功能很简单:用户从键盘输入什么话,它就在屏幕回响什么话。小明一琢磨:这个程序大体上细分为两个步骤:从键盘读取输入序列(比如一个一个字符地读取输入序列),把它们临时存放到内存某个位置读取内存位置M,把字符输出到屏幕上小明再三审视,觉得很严谨了,他决定动手了,他选择C语言来完成这个项目。2. C作为古老的编程语言,它遵从的是面向过程式的编程范式,也就是一开始小明一开始思考的步骤,步步为营,一步一个脚印。这是很符合人类大脑的最简单的行事逻辑的。
那么第一步首先是,处理输入序列。小明又开始琢磨了,他发现原来这件事还可以再细分:敲击键盘的动作触发某种电信号电信号以某种机制告知CPUCPU以某种方式把电信号进行转换把转换的信号以某种二进制格式,存放于内存某个位置3.小明开始有些挠头了,他没学过电路知识,也不懂CPU响应外部信号的机制,如何编写。 幸好,一番搜索查找资料,他发现:原来这些东西早就有人做好了,这是操作系统的功能之一:它抽象了复杂的机器硬件逻辑,然后提供了一件叫做系统调用的东西, 他在写程序时只要调用就可以。4.但他发现:没有什么公开的函数供他调用,以实现第2步中的分别四个小步骤啊。这不坑爹嘛!!!于是,小明又一番搜索,发现:原来, 这种系统调用还是相当抽象繁复的,一般人难以理解,更别说使用了,而且它也不符合人们的思维逻辑,人类只有输入一个东西,再把它原样输出这个概念,哪有这些乱七八糟的什么电路,CPU的概念啊。 进一步的说,他发现抽象是有层次的, 原来存在着更高级抽象, 人们可以直接使用来从键盘获取输入!5. 这个更高级抽象就是C语言中的标准输入输出库. 好家伙, 从这名字看,貌似输出这个库也帮他搞定了! 善于思考的小明又想多一些:这种所谓的库,不仅屏蔽了细节,因为不同的键盘,不同的CPU,可能处理这些信号转换的方法是不同的。用一个库来封装,只提供给外界声明好的确定的接口,外界就可以拿它来用了,而根本不用关心底层是如何实现的!要不换一台机器, 小明就得又大费周章去重写代码。 真妙!另外, 计算机作为一种机器,它也存在接口,叫做人机界面,接收外界的输入及向外界输出。这种行为应该是十分常见的,用一个库把这个行为封装起来,事半功倍啊!造福人人的啊喂!6. 小明真正开始编写代码了,他发现, 原来所有前面的工作只要一句话:#include&stdio.h&.
那个编译器啊,我要的功能在一个叫stdio(STanDard Input / Output)的库里, 我要用它。
至于这个叫stdio库是做什么的,它已经提供了一份清单了,叫stdio.h, 里面记录了它提供给外界的所有接口。我等下要用一个叫scanf 和 printf 的接口,这个接口的声明就在这个stdio.h文件里,你去核对下, 要是我用错了,你告诉我一声。 编译器:
好的,没问题!7. 就此刻为止,小明已经获得了他想要的。至于后面的故事嘛,编译器又去跟一个叫链接器的家伙通信(当然以他们之间能理解的协议),告诉链接器,去把一个叫stdio库的家伙中的 scanf和 printf代码以某种方式链接进最后的可执行文件里。8. 回顾整个过程,小明的计划:步骤清晰(每一个步骤做什么很清楚)分划干净(每个步骤只做一件事,各个步骤间通过协定的协议通信,比如1与2之间的协议是把某种击键电信号转换为内存中对应的字符,2与3之间的协议是把内存中的存放的字符转换为屏幕上一个方块的点阵图案)于是,不经意间,小明已经完成了对面向过程编程(8.1)与模块化(8.2)的一次体悟.小明的思考过程涉及了两个重要方面,而这不仅是编程模式的思考,更是人类对这个复杂外界环境的思考与抽象。 而编程,不过是以另一种语言的方式再现这种思考而已!
stdio.h提供了很多函数,诸如scanf读取用户输入,printf将内存显示到屏幕上;main一般要写为int/void main,假如只写main,那么在C89标准中编译(对应微软的Visual Studio系列编译器)只会报警,可以成功编译;但在C99标准后,使用gcc编译(默认编译选项)是会出错的。
include stdio.h非必需。stdio.h定义了不少输入输出的标准函数比如说printf,大部分程序都会用上,所以你感觉好像必须有了。有些程序不需要任何标准输入输出语句,比如说单片机上的程序。
# inciude&stdio.h& 不是必须的,这个是为了包含标准输入输出接口的头文件viod main或int main 如果你不是exe程序也不是必须的,其原因是exe需要入口函数来运行代码,当然你也可以在链接阶段手动指定入口函数的名称。dll中也有dllmain这样的入口函数,当然如果你不需要运行任何代码,你也可以不指定入口函数
对于0基础的人来说“必须有#include&stdio.h&这一行以及main”这个说法是对的但如果较真的话这种说法并不是绝对的
虽然大家都口口声声说必须要加,但是偏要不加的话,编译器(VC++ 6.0)也只是报警告,如:warning C4013: 'printf' assuming extern returning int程序仍然可以运行,且运行结果正确。哪位知道更深入的东西来解释为什么它只是报警告,而不会像大家想象的会报错误,而且还能正常运行?
在C语言中void main();
这种写法本身就是错误的,入口函数的返回值必须是 int 类型。这种写法可能在 VC 中没有问题,但绝不符合规范。事实上,《K&R C》中,是这样声明入口函数的:main();
因为在 C99 之前,省略返回值类型意味着返回值为 int 类型。但在 C99 中,main 函数只有两种标准形式(此句说法错误,感谢
提出)在 C99 中列举了两种 main 函数的形式:int main(void);
和int main(int argc, char *argv[]);
第一种中的 void 不能省略,因为在C语言中,省略与否完全是两种含义。C99 中又有or in some other implementation-defined manner但不论 main 函数的形参如何变化,其返回值一定是 int 类型的。更多详细内容:C语言 简单问题 #include&stdio.h& main() { int a=2,c=5; printf(&a=%%d,b=%%d&#92;n&,a,c); }_百度知道
C语言 简单问题 #include&stdio.h& main() { int a=2,c=5; printf(&a=%%d,b=%%d&#92;n&,a,c); }
b=%d程序应该如何改,b=%5,b=%d而不是a=%2,b=%%d同样如果我想要输出a=%d,或者是a=%%d为什么结果是a=%d
提问者采纳
么意思?,b=%d程序应该如何改?同样如果我想要输出a=%d??现在程序中输出的不就是这个吗?%%两个才表示一个%想输出数字出幞蛰缔股郫噶棍庞来,使用
%%%d三个?
说错了是如果想输出a=2%,b=5%
printf(&a=%d%%,b=%d%%&#92;n&,a,c);
谢谢呀~ 弱弱的问一下 为啥%%相当于一个%呢?
这是C语言中的一种规定的处理方法,因为%d这种后面跟着格式,你如果只写一个%,它不知道是你写错了,还是想输出,毕竟它不是很智能。还有一个 &#92;的转义字符,如果你想输出&#92; ,就得使用两个 &#92;&#92;,意思是差不多的。
提问者评价
其他类似问题
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 c语言中 是什么意思 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信