这几个都是C语言格式化输入输出时使用的格式符号。其中%U为误写,实际为%u。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:国际域名空间、雅安服务器托管、营销软件、网站建设、章丘网站维护、网站推广。
格式化输出函数包括printf, fprintf, sprintf等等。
格式化输入函数包括scanf, fscanf, sscanf等等。
这类函数在输入输出的时候都有一个参数为格式化字符串(format_str), 里面介绍了输入输出字符串的格式,当需要输入输出变量值时,就需要用对应的格式化字符来替代。
题目中提到的三种格式分别对应:
%ld对应long型,即长整型。
%d对应int型,即整型。
%u对应unsigned int型,即无符号整型。
除此以外,还有如下常见的类型。
%hd对应short型,即短整型。
%hu对应unsigned short型,即无符号短整型。
%f对应float型,即单精度浮点型。
%lf对应double型,即双精度浮点型。
%c对应char型,即字符型。
%s对应char *型,即字符指针/字符数组(均可称为字符串)。
%x对应int型,不过是以16进制输入输出。
%lx对应long型,同样是16进制形式。
以下是一个简单的例子:
#include stdio.h
int main()
{
int i;
long l;
unsigned int u;//定义三个不同类型的变量。
scanf("%d%ld%u",i,l,u);//格式化输入三种变量,每个对应自己的类型。
printf("i = %d\n", i);
printf("l = %ld\n", l);
printf("u = %u\n", u);//分行格式化输出三个变量的值。
return 0;
}
如果输入1 2 3
将输出
i = 1
l = 2
u = 3
逻辑有些问题,应该先让用户选择是用ID删除还是用Name 删除。如下:
#include stdio.h
#include stdlib.h
int main()
{
int id = 0;
char name[128];
printf("删除记录:\n");
printf("1. 通过ID\n");
printf("2. 通过姓名\n");
printf("请输入您的选择:");
int choose = 0;
scanf("%d", choose);
if (choose == 1) {
printf("请输入ID:");
scanf("%d", id);
printf("%d\n", id);
}
else if (choose == 2) {
printf("请输入姓名:");
scanf("%s", name);
printf("%s\n", name);
}
else {
printf("选择错误。\n");
}
system("pause");
return 0;
}
C语言限定ID是指在C语言编程中使用限定标识符来限定标识符的作用域。限定标识符用于避免与其他代码中的标识符冲突,例如定义了同名的变量、函数或其他符号。
例如,如果你在项目中使用了两个库,其中一个库中的标识符与另一个库中的标识符重名,那么你可以使用限定标识符将其中一个标识符限定在特定的作用域中,避免冲突。
限定标识符通常是在标识符前加一个前缀,如库名或命名空间名,以指定其来源。例如,库“A”中的标识符可以使用前缀“A_”限定,库“B”中的标识符可以使用前缀“B_”限定。
这不是两个函数,这是一个函数,extern "C" int listid(int id, OUT *);
中的extren通知编译器int listid(int id, OUT *)不在本源代码中实现,
"c"通知编译器用C调用方式调用在另外的一个源程序的函数,
C语言默认的调用方式就是C调用 C++就不同了,,所以最好加个"c"
另:调用方式规定了调用的时候输入参数的顺序和函数返回后输入参数占用的空间由调用程序释放还是由函数释放。这东西不一定要太懂,知道用"c"去考虑调用方式就可以了.
参数不同也是可以的,但是执行一定会有错误,而且应该不能出现同名不同参数的的令一个函数。要不连接的时候就找不到正确的函数。
%ld,%d,%u都是格式说明符中的类型。它的作用是将输入或者输出的数据按照格式说明符指定的格式进行输入或者输出。
(1)%ld表示数据按十进制有符号长型整数输入或输出。
(2)%d表示数据按十进制有符号整型数输入或输出。
(3)%u表示数据按十进制无符号整型数输入或输出。
格式说明符由%和格式字符组成。在一个格式控制字符串中可以有多个格式说明符,每一组格式说明符都是以%开始,以一个格式字符作为结束。具体类型和所代表含义如下图:
扩展资料:
当格式说明符限制了输入或输出的数据类型时,要与数据起始定义数据类型一一对应,否则会引起输入或输出错误。下面介绍一些基本的数据定义类型。
(1)void:声明函数无返回值或无参数,声明无类型指针,显示丢弃运算结果。(C89标准新增)
(2)char:字符型类型数据,属于整型数据的一种。(KR时期引入)
(3)int:整型数据,表示范围通常为编译器指定的内存字节长。(KR时期引入)
(4)float:单精度浮点型数据,属于浮点数据的一种。(KR时期引入)
(5)double:双精度浮点型数据,属于浮点数据的一种。(KR时期引入)
(6)_Bool:布尔型(C99标准新增)
(7)_Complex:复数的基本类型(C99标准新增)
(8)_Imaginary:虚数,与复数基本类型相似,没有实部的纯虚数(C99标准新增)
(9)_Generic:提供重载的接口入口(C11标准新增)
参考资料:c语言_百度百科
没看到图片里有%id啊!在printf函数的控制字符串里,%i和%d是一个意思,都是 按十进制输出对应的变量值。写成%id,就是在输出十进制数后加一个字母d。若在别的地方,因为没有看到代码,不好说。