这个异常是什么意思?格式 %d 需要类型为“int”的参数,但参数 2 的类型为“long long unsigned int”[-Wformat]

问题描述

我是一名试图学习 C 和 C++ 的学生,我遇到了说明符 %d 的问题我不明白控制台中写的异常,它正在写

The format %d expects argument of type 'int',but argument 2 has type 'long long unsigned int' [-Wformat]

代码如下:

#include<stdio.h>
#include<stdlib.h>

int main()
{
    short int u=1;
    int v=2;
    long int w=3;
    char x='x';
    float y=4;
    double z=5;
    long double a=6;
    long b=7;
    printf("short int:%d\n",sizeof(u));
    printf("int:%d octets\n",sizeof(v));
    printf("long int:%d octets\n",sizeof(w));
    printf("char:%d octets\n",sizeof(x));
    printf("float:%d octets\n",sizeof(y));
    printf("double:%d octets\n",sizeof(z));
    printf("long double:%d octets\n",sizeof(a));
    printf("long:%d octets\n",sizeof(b));
    return 0;
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)