Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 错误:格式‘;%lu’;需要匹配的‘;长无符号整数’;参数[-Werror=format=]_C_C99 - Fatal编程技术网

C 错误:格式‘;%lu’;需要匹配的‘;长无符号整数’;参数[-Werror=format=]

C 错误:格式‘;%lu’;需要匹配的‘;长无符号整数’;参数[-Werror=format=],c,c99,C,C99,如何修复该错误?。搜索了很多网页,但没有发现任何类似的问题 使用gcc-Wall-Werror-std=c99编译 错误代码: NameOfProgram: In function ‘main’: NameOfProgram:17:23: error: format ‘%lu’ expects a matching ‘long unsigned int’ argument [-Werror=format=] printf("%lu , number");

如何修复该
错误
?。搜索了很多网页,但没有发现任何类似的问题

使用gcc-Wall-Werror-std=c99编译 错误代码:

NameOfProgram: In function ‘main’:
NameOfProgram:17:23: error: format ‘%lu’ expects a matching ‘long unsigned int’ argument [-Werror=format=]
             printf("%lu , number");
                     ~~^
NameOfProgram:21:23: error: format ‘%lu’ expects a matching ‘long unsigned int’ argument [-Werror=format=]
             printf("%lu , number");
#include <stdio.h>
#include <stdlib.h>



int main(void) {

unsigned long number;
printf("Geben Sie irgendeine natürliche Zahl ein, die größer als 0 ist: ");
scanf(" %lu", &number);
printf("\n");

while(number > 0) {

    if(number % 2 == 0) {
        number = number / 2;
        printf("%lu , number");
    }
    else {
        number = (3 * number) + 1;
        printf("%lu , number");
    }
}


return EXIT_SUCCESS;
}
c99中的程序:

NameOfProgram: In function ‘main’:
NameOfProgram:17:23: error: format ‘%lu’ expects a matching ‘long unsigned int’ argument [-Werror=format=]
             printf("%lu , number");
                     ~~^
NameOfProgram:21:23: error: format ‘%lu’ expects a matching ‘long unsigned int’ argument [-Werror=format=]
             printf("%lu , number");
#include <stdio.h>
#include <stdlib.h>



int main(void) {

unsigned long number;
printf("Geben Sie irgendeine natürliche Zahl ein, die größer als 0 ist: ");
scanf(" %lu", &number);
printf("\n");

while(number > 0) {

    if(number % 2 == 0) {
        number = number / 2;
        printf("%lu , number");
    }
    else {
        number = (3 * number) + 1;
        printf("%lu , number");
    }
}


return EXIT_SUCCESS;
}
#包括
#包括
内部主(空){
无符号长数;
printf(“我是纳图利什·扎尔·艾因,我是格雷尔·艾尔斯特:”);
scanf(“%lu”、&number);
printf(“\n”);
而(数量>0){
如果(数字%2==0){
数量=数量/2;
printf(“%lu,编号”);
}
否则{
数字=(3*数字)+1;
printf(“%lu,编号”);
}
}
返回退出成功;
}

您的报价位置错误。试试这个

printf("%lu", number);
但作为一个补充,它可能值得考虑更便携的PRI符号。例如,如果您有一个显式32位无符号整数,则打印格式字符串会因编译器而异:

uint32_t number;
printf("My value is: %"PRIu32, number);

你的报价放错地方了。试试这个

printf("%lu", number);
但作为一个补充,它可能值得考虑更便携的PRI符号。例如,如果您有一个显式32位无符号整数,则打印格式字符串会因编译器而异:

uint32_t number;
printf("My value is: %"PRIu32, number);

查看
printf
调用中字符串的语法高亮显示。争论在哪里?它应该在字符串中吗?看看
printf
调用中字符串的语法高亮显示。争论在哪里?它应该在弦里面吗?