有人告訴我使用strlcpy
函數而不是strcpy
這樣當我使用是strlcpy函數在c compilor給我一個錯誤
#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的(簡約GNU適用於Windows)和GCC版本是4.7.2
什麼問題?
@MitchWheat一個有效的點,但這不是爲什麼'ld'抱怨:-)) – cnicutar
我沒有說這是。 :) –
var1只有6個字符空間,您正試圖將6個字符字符複製到它。不是'你錯過了我們很好的''0'或者'你不想寫過去的var1緩衝區? – Abhineet