gpt4 book ai didi

c程序问题

转载 作者:行者123 更新时间:2023-11-30 19:24:16 24 4
gpt4 key购买 nike

Possible Duplicate:
c programming problem

我写了一个计算文件校验和的代码。但是当我编译它时,它显示了我无法解决的问题。我使用 ubuntu 10.04 作为我的操作系统。

我计算校验和的代码是这样的:

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

unsigned checksum(void *buffer, size_t len, unsigned int seed)
{
unsigned char *buf = (unsigned char *)buffer;
size_t i;

for (i = 0; i < len; ++i)
seed += (unsigned int)(*buf++);
return seed;
}


int main()
{
FILE *fp;
size_t len;
char buf[4096], file[] = "/home/manish.yadav/filename.c";

if (NULL == (fp = fopen(file, "rb")))
{
printf("Unable to open %s for reading\n", file);
return -1;
}
len = fread(buf, sizeof(char), sizeof(buf), fp);
printf("%zd bytes read\n", len);
printf("The checksum of %s is %u\n", file, checksum(buf, len, 0));

return 0 ;
}

我将其保存为名称 checksum.c 并使用以下命令编译它:

gcc checksum.c

我收到以下消息:

/tmp/ccatkZlp.o:(.eh_frame+0x12): undefined reference to `__gxx_personality_v0' collect2: ld returned 1 exit status

现在有人可以告诉我我在这个程序中做错了什么吗?这些错误是什么以及为什么会出现?

请帮助我,我完全陷入困境。

最佳答案

位于文件顶部,#include <stdio.h> 之前,添加

#ifdef __cplusplus
#error Compile with a C compiler
#endif

关于c程序问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5949657/

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