C语言中如何正确使用长尾词作为变量名或函数参数?

2026-04-16 19:254阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计531个文字,预计阅读时间需要3分钟。

C语言中如何正确使用长尾词作为变量名或函数参数?

在即将到来的C考试中,我们面临一个可能为你们提供额外学分的课题。问题始于何时结束,与不同打印类型的排版技巧有关。总的来说,我理解了我所经历的所有问题,但有两大问题让我感到困扰:以下步骤。

在即将到来的c考试中,我们有一个问题可以为您提供额外的学分.

问题始终与各种打印类型的棘手语法有关.

总的来说,我理解了我所经历的所有问题,但有两个问题让我感到困惑:

以下程序的输出是什么?

#include <stdio.h> void main(){ printf ("%c", '&'&'&'); }

回答:&

C语言中如何正确使用长尾词作为变量名或函数参数?

以下程序的输出是什么?

#include <stdio.h> #include <string.h> void main(){ printf("%c",strcmp("***","**")*'*'); }

回答:*

正如您所看到的,问题非常相似.
我的问题是,为什么这是输出?

关于第一个问题:我理解一个字符,逻辑方面,总是为TRUE,并且使用TRUE AND-TRUE给你TRUE(或1),但为什么它会将1转换为’&’,为什么不ASCII表中的char等价于1? (注意%c的必要打印而不是%d)

关于第二个问题:我理解strcmp根据’首先出现在字典中’的值返回一个int,在这个例子中将导致1但是为什么将它与char’*’相乘(再次,逻辑方面等于1)会导致转换(1 * 1 = 1)为char’*’?

对于第一个问题,表达式是’&’ &安培; ‘&’,其中&是一个按位AND运算符(不是逻辑运算符).使用按位AND和x&的结果x是x,所以在这种情况下的结果只是字符’&’.

对于第二个问题,假设调用strcmp()的结果为1,则可以将表达式简化为1 *’*’,这只是’*’. (注意,正如上面的注释中提到的@rici,strcmp的结果在这种情况下不保证为1,只是它将是一个整数> 0,所以你不应该依赖这种行为,因此问题是一个糟糕的问题).

标签:考试

本文共计531个文字,预计阅读时间需要3分钟。

C语言中如何正确使用长尾词作为变量名或函数参数?

在即将到来的C考试中,我们面临一个可能为你们提供额外学分的课题。问题始于何时结束,与不同打印类型的排版技巧有关。总的来说,我理解了我所经历的所有问题,但有两大问题让我感到困扰:以下步骤。

在即将到来的c考试中,我们有一个问题可以为您提供额外的学分.

问题始终与各种打印类型的棘手语法有关.

总的来说,我理解了我所经历的所有问题,但有两个问题让我感到困惑:

以下程序的输出是什么?

#include <stdio.h> void main(){ printf ("%c", '&'&'&'); }

回答:&

C语言中如何正确使用长尾词作为变量名或函数参数?

以下程序的输出是什么?

#include <stdio.h> #include <string.h> void main(){ printf("%c",strcmp("***","**")*'*'); }

回答:*

正如您所看到的,问题非常相似.
我的问题是,为什么这是输出?

关于第一个问题:我理解一个字符,逻辑方面,总是为TRUE,并且使用TRUE AND-TRUE给你TRUE(或1),但为什么它会将1转换为’&’,为什么不ASCII表中的char等价于1? (注意%c的必要打印而不是%d)

关于第二个问题:我理解strcmp根据’首先出现在字典中’的值返回一个int,在这个例子中将导致1但是为什么将它与char’*’相乘(再次,逻辑方面等于1)会导致转换(1 * 1 = 1)为char’*’?

对于第一个问题,表达式是’&’ &安培; ‘&’,其中&是一个按位AND运算符(不是逻辑运算符).使用按位AND和x&的结果x是x,所以在这种情况下的结果只是字符’&’.

对于第二个问题,假设调用strcmp()的结果为1,则可以将表达式简化为1 *’*’,这只是’*’. (注意,正如上面的注释中提到的@rici,strcmp的结果在这种情况下不保证为1,只是它将是一个整数> 0,所以你不应该依赖这种行为,因此问题是一个糟糕的问题).

标签:考试