Serendipity_one 2021-11-03 23:59 采纳率: 100%
浏览 16
已结题

用变量=getchar清缓存为啥说定义的变量没有用到

#include <stdio.h>
#include <math.h>
#include <string.h>
int main()
{
int i,T,a[33],sum;
char ch[33],c;
scanf("%d",&T);
c=getchar();
for(int t=0;t<T;t++)
{
gets(ch);
sum=0;
for(i=0;i<strlen(ch);i++)
{
a[strlen(ch)-1-i]=ch[i]-'0';
}
for(i=0;i<strlen(ch);i++)
{
sum=sum+a[i]*pow(2,i);
}
printf("%d\n",sum);
}
return 0;
}
这是一道二进制转换为十进制的题目,一共有T组测试数据,由于题目要求需要将31位以下的二进制串都能转换成十进制,但由于longlong范围不够只能用数组存储,我想问的是,我定义的c是用来清缓存区scanf的回车的,但是为什么最后编译出现warning说我的变量c申明了却是unused?用的codeblock,C语言

  • 写回答

2条回答 默认 最新

  • 关注

    是不是没有保存,保存一下重新编译试试。
    因为c只是用来接收回车符,所以c这个变量可以不要,c = getchar();直接用getchar()就可以了,然后把声明的c删掉,这样就可以消除这个警告了。(一些警告忽略就行,对代码没什么影响)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月12日
  • 已采纳回答 11月4日
  • 创建了问题 11月3日

悬赏问题

  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大
  • ¥15 Revit2020下载问题
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大
  • ¥15 单片机无法进入HAL_TIM_PWM_PulseFinishedCallback回调函数
  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 如何在炒股软件中,爬到我想看的日k线