C 为什么下面的程序会给出输出:A
为什么下面的程序给出输出:A 格式说明符%d之后\n的用法是什么? 我已经在Linux、Windows和Windows上试用过了C 为什么下面的程序会给出输出:A,c,arrays,pointers,printf,C,Arrays,Pointers,Printf,为什么下面的程序给出输出:A 格式说明符%d之后\n的用法是什么? 我已经在Linux、Windows和Windows上试用过了 ASCII字符编码。A是65岁 您正在将输出格式说明符从%d-整数更改为%c-字符ASCII字符编码。A是65岁 您正在将输出格式说明符从%d-整数更改为%c-字符%c表示字符 65是“A”的ASCII码。%c表示字符 65是“A”的ASCII码。如果格式字符串为%c,则指定printf应打印一个字符。65是字符“A”的ASCII值 您将在上找到有关ASCII的更多信
ASCII字符编码。A是65岁
您正在将输出格式说明符从%d-整数更改为%c-字符ASCII字符编码。A是65岁 您正在将输出格式说明符从%d-整数更改为%c-字符%c表示字符 65是“A”的ASCII码。%c表示字符 65是“A”的ASCII码。如果格式字符串为%c,则指定printf应打印一个字符。65是字符“A”的ASCII值 您将在上找到有关ASCII的更多信息,包括字符值表。对于格式字符串%c,您指定printf应打印字符。65是字符“A”的ASCII值
您将在上找到有关ASCII的更多信息,包括字符值表。首先,您的程序修改格式字符串:它变为%c\n。然后它打印65,它被重新解释为ASCII码,即大写字母A 这与
printf("%c\n", 65);
甚至
printf("%c\n", 'A');
由于字符值在传递给变量函数(如printf)时会转换为int。首先,程序会修改格式字符串:它变为%c\n。然后它打印65,它被重新解释为ASCII码,即大写字母A 这与
printf("%c\n", 65);
甚至
printf("%c\n", 'A');
因为char值在传递给变量函数(如printf)时会转换为int。让我们了解执行流程和变量的状态。最初,您正在设置字符串p=%d\n。“%d”告诉printf在“%d”处打印一个整数,它将在字符串参数之后传递给printf。然后设置p[1]=“c”。这会将p更改为%c\n,因为数组从0开始编制索引,所以在引用1位置时会更改第二个字符。他们用p和65调用printf,这使得调用看起来像这样:“printf%c\n,65”。%c告诉printf函数用作为第二个参数传递的字符替换%c。在C语言中,字符在ASCII表中表示为整数,可在以下位置找到:。恰好65是“A”的代码,所以会打印出一个“A”,后跟一个换行符。我希望这是有帮助的 让我们了解执行流程和变量的状态。最初,您正在设置字符串p=%d\n。“%d”告诉printf在“%d”处打印一个整数,它将在字符串参数之后传递给printf。然后设置p[1]=“c”。这会将p更改为%c\n,因为数组从0开始编制索引,所以在引用1位置时会更改第二个字符。他们用p和65调用printf,这使得调用看起来像这样:“printf%c\n,65”。%c告诉printf函数用作为第二个参数传递的字符替换%c。在C语言中,字符在ASCII表中表示为整数,可在以下位置找到:。恰好65是“A”的代码,所以会打印出一个“A”,后跟一个换行符。我希望这是有帮助的 您可以在使用EBCDIC的平台上试用。@DanielFischer,为拥有相同的想法而欢呼五声编辑:这不是必需的,但如果您在自己的行上有输出,它的可读性会更好,新标题与我们的问题有什么关系?@downvoter:有人能告诉我为什么它被否决吗?你可以在使用EBCDIC的平台上试用。@DanielFischer,为拥有同样的想法欢呼编辑:这不是必需的,但如果你有自己的输出,它会更可读,新的标题和我们的问题有什么关系?@downvoter:有人能告诉我为什么它被否决了吗?