假设编译后的程序是testexe
试试
c:\>test>prn1
这是把标准输出映射到打印机,而不是显示器
你查一下dos重定向输出应该会有结果
1首先需要先定义一个存放字符串的数组空间,如给字符串100个数组空间。
2接着使用gets()函数来获取键盘输入的字符串。一般格式为gets(定义的字符数组名)。
3然后再使用puts()函数来输出之前输入的字符串内容。一般格式puts(定义的字符数组名)。
4最终运行程序,即可成功实现输入字符串,然后原样在屏幕中输出字符串。
扩展资料:
1gets从标准输入设备读字符串函数,其可以无限读取,不会判断上限,以回车结束读取,所以程序员应该确保buffer的空间足够大,以便在执行读 *** 作时不发生溢出。
2puts()函数用来向标准输出设备(屏幕)输出字符串并换行,具体为:把字符串输出到标准输出设备,将'\0'转换为回车换行。其调用方式为,puts(s);其中s为字符串字符(字符串数组名或字符串指针)。
参考资料:
-gets
-puts
C语言中要输出地址时通常以16进制的方式输出
printf函数中要显示16进制数时用%x格式
综上,要输出某个值的地址可以写为printf("%x",&变量);若变量为指针时,则应写为printf("%x",指针);
代码示例如下,int a=5;a的地址为&a;
C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。 目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。
C语言之所以命名为C,是因为 C语言源自Ken Thompson发明的B语言,而 B语言则源自BCPL语言。
1967年,剑桥大学的Martin Richards对CPL语言进行了简化,于是产生了BCPL(Basic Combined Programming Language)语言。
20世纪60年代,美国AT&T公司贝尔实验室(AT&T Bell Laboratory)的研究员Ken Thompson闲来无事,手痒难耐,想玩一个他自己编的,模拟在太阳系航行的电子游戏——Space Travel。他背着老板,找到了台空闲的机器——PDP-7。但这台机器没有 *** 作系统,而游戏必须使用 *** 作系统的一些功能,于是他着手为PDP-7开发 *** 作系统。后来,这个 *** 作系统被命名为——UNIX。
printf 是指格式化输出函数,主要功能是向标准输出设备按规定格式输出信息。
printf 是C语言标准库函数,定义于头文件 <stdioh>。printf 函数的一般调用格式为:printf("<格式化字符串>", <参量表>)。输出的字符串除了可以是字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。
注意事项:
1、函数返回值
printf 函数的返回值为其输出字符串常量的字符数(注意字符数与字数的区别),注意计数针对所有的打印字符,包括空格和不可见的换行字符(不包括字符串的空字符)。
2、打印较长字符串
有时printf 语句会很长,以至于不能在一行被放下,如果我们必须分割一个字符串,有以下三种方式可以选择。需要注意的是,我们可以在字符串中使用 "\n" 换行符来表示换行字符,但是在字符串中不能通过回车键来产生实际的换行字符。
第一个要求:
#include
<stdioh>
void
main()
{
char
a
;
scanf("%c",&a)
;
/
从键盘上输入一个单个字符,并存入变量
a
中
/
if(
(
a
>=
'a'
)
&&
(
a
<=
'z'
)
)
/
如果输入的是
小写字母
/
{
a-=32
;
/
把相应的小写字母转换为
大写字母
,并输出
/
printf("%c",a)
;
}
else
/
如果是其它所有字母的话,就直接输出字母本身
/
printf("%c\n",
a
)
;
}
第二个要求:
65(按
十进制
格式输出)
101(按
八进制
格式输出)
41(按
十六进制
格式输出)
A(输出ASCII
为
65
的字符本身,为大写的
A)
你用strlen(a)测一下二者看是否一样长?char c[] = "asd\nasd"把\n只当一个转义字符'\n'看待,ASCII码是10;而用gets接收的\n是两个字符\和n,而并非加“回车键”值10。在前者中要想输出
asd\nasd,得写成asd\\nasd。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)