首页 > 解决方案 > 如何在c中使用get()添加选项卡

问题描述

我是一名刚刚学习 C 编程的学生,我在作业中遇到了一些问题,这是我的代码:

#include <stdio.h>
int main()
{
char name[30];
printf("\tEnter Your Name = \n");
gets(name);

char address[100];
printf("\tPlease enter your address = \n");
gets(address);

printf ("\tYour name is = %s\n", name);
printf("\tYour address is = %s", address);

getchar();
return 0;
}

如您所见,它可以正常运行,但是我需要在输入中添加制表符,因此结果应如下所示

 
(选项卡)输入您的姓名 =
(选项卡)用户输入
(tab) 请输入您的地址 =
(选项卡)用户输入
(标签)你的名字是=用户输入的基础
(选项卡)您的地址是=用户输入的基础

我希望有人可以帮助和解释给我。谢谢

标签: c

解决方案


我需要将制表符放在我的输入中,所以结果应该是这样的......

由于输入可能已经或可能不包括前导制表符,请考虑有条件地指向输入的开头或下一个字符。

char *tabless_name = name;  // form the base
if  (tabless_name[0] == '\t') {
  tabless_name++; 
}
printf ("\tYour name is = %s\n", tabless_name);

关注gets()为什么gets函数如此危险以至于不应该使用?.


推荐阅读