C语言中%d,和%u有什么区别

作者&投稿:咎追 (若有异议请与网页底部的电邮联系)
C语言里面的%ld、%d、%U都是什么意思啊?~

%ld,%d,%u都是格式说明符中的类型。它的作用是将输入或者输出的数据按照格式说明符指定的格式进行输入或者输出。
(1)%ld表示数据按十进制有符号长型整数输入或输出。
(2)%d表示数据按十进制有符号整型数输入或输出。
(3)%u表示数据按十进制无符号整型数输入或输出。
格式说明符由%和格式字符组成。在一个格式控制字符串中可以有多个格式说明符,每一组格式说明符都是以%开始,以一个格式字符作为结束。具体类型和所代表含义如下图:

扩展资料:
当格式说明符限制了输入或输出的数据类型时,要与数据起始定义数据类型一一对应,否则会引起输入或输出错误。下面介绍一些基本的数据定义类型。
(1)void:声明函数无返回值或无参数,声明无类型指针,显示丢弃运算结果。(C89标准新增)
(2)char:字符型类型数据,属于整型数据的一种。(K&R时期引入)
(3)int:整型数据,表示范围通常为编译器指定的内存字节长。(K&R时期引入)
(4)float:单精度浮点型数据,属于浮点数据的一种。(K&R时期引入)
(5)double:双精度浮点型数据,属于浮点数据的一种。(K&R时期引入)
(6)_Bool:布尔型(C99标准新增)
(7)_Complex:复数的基本类型(C99标准新增)
(8)_Imaginary:虚数,与复数基本类型相似,没有实部的纯虚数(C99标准新增)
(9)_Generic:提供重载的接口入口(C11标准新增)
参考资料:c语言_百度百科

printf中分别代表的输出类型:
%a(%A):浮点数、十六进制数字和p-(P-)记数法(C99)
%c:字符
%d:有符号十进制整数
%f:浮点数(包括float和doulbe)
%e(%E):浮点数指数输出[e-(E-)记数法]
%g(%G):浮点数不显无意义的零"0"
%i:有符号十进制整数(与%d相同)
%u:无符号十进制整数
%o:八进制整数 e.g. 0123
%x(%X):十六进制整数0f(0F) e.g. 0x1234
%p:指针
%s:字符串
%%:"%"

扩展语句:
C语言中printf语句的简介:
printf()是C语言标准库函数,用于将格式化后的字符串输出到标准输出。标准输出,即标准输出文件,对应终端的屏幕。printf()申明于头文件stdio.h。
函数原型:int printf ( const char * format, ... );
返回值:
正确返回输出的字符总数,错误返回负值,与此同时,输入输出流错误标志将被置值,可由指示器ferror来检查输入输出流的错误标志。
调用格式:
printf()函数的调用格式为:printf("格式化字符串",输出表列)。
格式化字符串包含三种对象,分别为:
(1)字符串常量;
(2)格式控制字符串;
(3)转义字符。
字符串常量原样输出,在显示中起提示作用。输出表列中给出了各个输出项,要求格式控制字符串和各输出项在数量和类型上应该一一对应。其中格式控制字符串是以%开头的字符串,在%后面跟有各种格式控制符,以说明输出数据的类型、宽度、精度等。
参考资料:百度百科-C语言
CSDN论坛-printf语句详解

%d可以用在scanf中,也可以用在printf中,%u只能用在printf中(早期编译器),后来的一些编译器也可以用在scanf中。用在scanf中时二者没有区别作用与%d相同,用在printf中时二者情况就大不一样了:%d把对应的整数按有符号十进制输出,%u把对应的整数按无符号十进制输出,比如printf("%d,%u\n",-123,-123);,输出则是-123,4294967173——因为-123的补码是11111111111111111111111110000101,在%u控制下把它当正数输出了。

c语言中的%u是输入输出格式说明符,表示按unsigned int格式输入或输出数据。



:•:


C语言中%d的%,d分别表示什么?
c语言输入输出控制符,i---输出一个整型数;%d---输出一个整型数;%f---输出一个浮点数;%e---输出一个浮点数,科学计数法;%g---输出一个浮点数,当指数小于-4或者大于5,则运用科学计数法,否则正常显示浮点数;%c---输出一个字符;%o---输出一个八进制的整型数,前面不带0;%#o---...

c语言输出时%d,%c这些都分别代表什么?
格式化输出%d表示整型输出 %c表示字符型输出 它用以表示输出数据的类型,以下是常用类型的汇总,不常用的就不列了。hd、%d、%ld 以十进制、有符号的形式输出 short、int、long 类型的整数。hu、%u、%lu 以十进制、无符号的形式输出 short、int、long 类型的整数 c 输出字符。lf 以普通方式输出double...

C语言中的%%d是什么意思
表示把数据按十进制整型输出,类似的符号含义如下:o表示把数据按八进制整型输出;x表示把数据按十六进制整型输出;u表示把数据参数按无符号整型输出。f显示小数表示的普通浮点数。

c 语言中%u,%i,%d,%n。。。等等表示的是什么
printf("The sum of three and four is %i\\n",three,four,sum );\/\/这句话错了一个%i 只代表一个变量 你可以把这句话改成printf("The sum of three and four is %i\\n",sum ); 就可以运行了 i和%d都是表示有符号十进制整数区别在于,%i可以自动将输入的八进制(或者十六进制)转换为十...

int,signed int和unsigned int 以及printf 的%u,%d的区别
以上就是大概的int,signed int和unsigned int的区别。printf()中的%u和%d的区别:首先你要知道printf是一个转换器,就是将内存中的数据转换成屏幕输出的格式,因为内存中的格式是一种编码,而输出到屏幕的编码是另一种(全英文的话你可以简单的看成ascii、中文gbk2312、utf-8这要看窗口如何设置......

c语言新手题(>_<):无符号十进制不是应该用%u表示吗?为什么可以用%d表示...
unsigned short 类型当然不支持负数,其中的二进制表示最高位是数值位而不是符号位。如果强行赋值-1的话结果就是负溢出,这个时候使用%d输出,%d是指带符号整数,会正常输出负溢出之后的数字,就是65535了啊

int,signed int和unsigned int 以及printf 的%u,%d的区别
int ,signed int 定义有符号的整形变量,数据有正有负, 这种数据输出的时候用%d unsigned int 定义无符号的整形变量,数据只有正数,这种数据输出的时候用%u

C语言里 %d什么意思?
表示把数据按十进制整型输出,类似的符号含义如下:o表示把数据按八进制整型输出;x表示把数据按十六进制整型输出;u表示把数据参数按无符号整型输出。f显示小数表示的普通浮点数。

C语言中%d,%nd,%f,%lf,%c,%o,%x %e这个几个符号都表示什么?
C语言中%d,%nd,%f,%lf,%c,%o,%x %e这个几个符号的表示意思如下:1、%a(%A) 表示浮点数、十六进制数字和p-(P-)记数法(C99)。2、%c 表示字符。3、%d表示有符号十进制整数。4、%f 表示浮点数(包括float和doulbe)。5、%e(%E)表示 浮点数指数输出[e-(E-)记数法]。6、%g(%G) 表示...

printf("%d,%u,%o%x\\n",a,a,a,a) 是什么意思?
分别以带符号10进制,无符号10进制,8进制,16进制输出a.(8进制和16进制均是无符号类型.)

依兰县15382984628: C语言中%d,和%u有什么区别 -
陆贪维思: %d可以用在scanf中,也可以用在printf中,%u只能用在printf中(早期编译器),后来的一些编译器也可以用在scanf中.用在scanf中时二者没有区别作用与%d相同,用在printf中时二者情况就大不一样了:%d把对应的整数按有符号十进制输出,%u把对应的整数按无符号十进制输出,比如printf("%d,%u\n",-123,-123);,输出则是-123,4294967173——因为-123的补码是11111111111111111111111110000101,在%u控制下把它当正数输出了.

依兰县15382984628: c语言里%u和%d有区别吗? -
陆贪维思: 当然有.若有int x=-8;则printf("%u,%d\n",x,x);的结果是4294967288,-8.

依兰县15382984628: c语言中如果想输出1的用%d还是%u -
陆贪维思: %d是有符号整数 %u是无符号整数所以,输出1,用%d或%u都可以; 如果输出-1,就有区别了:%d输出-1,%u输出ffffffff

依兰县15382984628: C语言里面的%ld、%d、%U都是什么意思啊? -
陆贪维思: %ld,%d,%u都是格式说明符中的类型.它的作用是将输入或者输出的数据按照格式说明符指定的格式进行输入或者输出. (1)%ld表示数据按十进制有符号长型整数输入或输出. (2)%d表示数据按十进制有符号整型数输入或输出. (3)%u表示数据...

依兰县15382984628: C语言的输出%d,%u,%s都代表什么意思啊? -
陆贪维思: 随便找本C语言教材都有说啊,基本上 %d 十进制整数 %c 字符 %s 字符串 %f, %g, %e 十进制浮点数 %p 指针 %o 八进制 %x 十六进制 %u 无符号整数 等等

依兰县15382984628: C语言的%ld、%d、%U是啥意思啊? -
陆贪维思: %ld、%d、%U 分别代表输出数据格式的类型 分别是 长整型 整型 无符号整型

依兰县15382984628: c 语言中%u,%i,%d,%n...等等表示的是什么 -
陆贪维思: printf("The sum of three and four is %i\n",three,four,sum );//这句话错了一个%i 只代表一个变量 你可以把这句话改成printf("The sum of three and four is %i\n",sum ); 就可以运行了%i和%d都是表示有符号十进制整数区别在于,%i可以...

依兰县15382984628: C语言中整型数据用u%与用d%格式输出有什么区别?(知道的请回答,抱歉暂时木有积分送出)
陆贪维思: 对大于0的数字没区别 小于0的d会有个负号

依兰县15382984628: 新手解惑.在c语言中,为什么用%u而不能用%d输出无符号类型整数的最大值?(如UINT–MAX?) -
陆贪维思: %u 输出无符号数 %d 输出有符号数 所以,要想看到无符号数据,则要使用%u

依兰县15382984628: c语言中%d,%f,%u这些东西都是什么意思啊,还有浮点型数据是什么意思啊,谁详细说一下 -
陆贪维思: 给你一个完整的吧: %d%f%c都是printf输出时.规定数据输出方式的,详细的输出方式列表如下: %d 有符号10进制整数 %i 有符号10进制整数 %o 有符号8进制整数 %u 无符号10进制整数 %x 无符号的16进制数字,并以小写abcdef表示 %X 无...

你可能想看的相关专题

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网