【问题标题】:printf format character from getchar() in C来自 C 中 getchar() 的 printf 格式字符
【发布时间】:2020-10-26 12:48:15
【问题描述】:

我的任务是打印 ASCII 码和输入: 以下是我的代码:

#include <stdio.h>

int main(void){
  char ch;
  printf("Whatever: ");
  while((ch = getchar()) != 'q')
  {
    getchar();
    printf("The char is %c and %d in ASCII.\n", ch, ch);
  }

  return 0;
}

如果我想从 getchar() 函数中打印 \n,我应该修改什么?

Example: 
  The char is \n and 10 in ASCII.

【问题讨论】:

  • 您可以将ch与换行符进行比较,如果为真,请在printf内使用\\n
  • 1) 启用所有警告 2) char ch; --> int ch; 避免麻烦。

标签: c char getchar


【解决方案1】:

希望下面有帮助

while((ch = getchar()) != 'q')
{
   if(ch == '\n')
        printf("The '\\n' ascii value is %d\n", ch);
   else
        printf("The '%c' ascii value is %d\n", ch, ch);
}

【讨论】:

  • 谢谢,这是一个很好的方法。但是,我想知道我是否想打印其他格式字符,如 \a \b,有没有更好的主意?
  • 这些是不可打印的字符,您必须将它们与它们的 ascii 代码 ascii table 进行比较,并以与我们打印 \n 相同的方式打印
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-04
  • 1970-01-01
  • 1970-01-01
  • 2016-01-03
相关资源
最近更新 更多