구조체가 있고 orig의 outfname에있는 요소를 dest의 outfname으로 복사하려고합니다. 어떻게해야합니까?구조체의 atributes를 동일한 유형의 다른 구조체에 복사하십시오.
typedef struct {
char outfname[256];
} sudoku_t;
void sudoku_copy(sudoku_t* orig,sudoku_t* dest){
}
감사합니다.
구조체가 있고 orig의 outfname에있는 요소를 dest의 outfname으로 복사하려고합니다. 어떻게해야합니까?구조체의 atributes를 동일한 유형의 다른 구조체에 복사하십시오.
typedef struct {
char outfname[256];
} sudoku_t;
void sudoku_copy(sudoku_t* orig,sudoku_t* dest){
}
감사합니다.
void sudoku_copy(sudoku_t* orig, sudoku_t* dest)
{
*dest = *orig;
}
그냥 대입 연산자를 사용하십시오.
사이드 노트에서 memcpy
및 strcpy
과 같은 함수에서 사용하는 C 규칙에 맞게 함수에서 첫 번째 매개 변수로 dest
을 사용하는 것이 좋습니다.
대안 (대부분의 휴대용) 접근 방법은 다음과 같습니다
#include <string.h>
void sudoku_copy(sudoku_t* orig, sudoku_t* dest)
{
memcpy(dest, orig, sizeof (*dest));
}