gpt4 book ai didi

c - 当我在 c 中使用 strlcpy 函数时,编译器给我一个错误

转载 作者:太空狗 更新时间:2023-10-29 16:48:09 26 4
gpt4 key购买 nike

有人告诉我要使用 strlcpy 函数而不是这样的 strcpy

#include <stdio.h>
#include <string.h>

void main()
{
char var1[6] = "stuff";
char var2[7] = "world!";
strlcpy(var1, var2, sizeof(var2));
printf("hello %s", var1);

}

当我编译文件时它给了我以下错误:

C:\Users\PC-1\AppData\Local\Temp\ccafgEAb.o:c.c:(.text+0x45): undefined referenc
e to `strlcpy'
collect2.exe: error: ld returned 1 exit status

注意:我已经安装了MinGW(用于Windows 的Minimalist GNU)并且gcc 版本是4.7.2

问题是什么?

最佳答案

undefined reference to `strlcpy'

当链接器(如果您使用的是 gcc,则为 collect2)无法找到它提示的函数的定义(不是声明或原型(prototype),但是定义,函数代码定义的地方)。

在您的情况下,这可能会发生,因为 strlcpy 没有共享对象或库。要链接的代码。如果你确定有一个包含代码的库并且你想链接它,请考虑使用 -L<path_to_library> 指定库的路径。传递给编译器的参数。

关于c - 当我在 c 中使用 strlcpy 函数时,编译器给我一个错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18547251/

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