gpt4 book ai didi

c - stray 在C中寻找错误

转载 作者:太空宇宙 更新时间:2023-11-04 05:19:50 25 4
gpt4 key购买 nike

我不知道为什么这个程序会出现这个语法错误。

#include <stdio.h>
#include <stdbool.h>

#define N 30

int main(void) {
char sieve[N], *sp;
int number;
for(sp = sieve; sp < sieve + N;)
*sp++ = true;

for(number = 3;; number += 2) {
sp = sieve + (number – 3)/2;
if(sp >= sieve + N)
break;
while(sp += number, sp < sieve + N)
*sp = false;
}

printf("2\n");
for(number = 3, sp = sieve; sp < sieve + N; number += 2, sp++) {
if(*sp)
printf("%d\n", number);
}

return 0;
}

它出现在第 13 行:sp = sieve + (number - 3)/2;

error: stray '\342' in program
error: stray '\200' in program
error: stray '\223' in program
error: expected '>' before numeric constant.

我也用另一个编译器试过,我也用这种方式试过 sp = sieve + ((number - 3)/2); 但什么也没有发生。

最佳答案

第 13 行的减号字符根本不是减号,而是连字符(我想这就是它的名字)。

 sp = sieve + (number – 3)/2;

应该是

 sp = sieve + (number - 3)/2;

当我更改该字符时,代码会编译。

关于c - stray 在C中寻找错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15570622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com