free

    1

    1답변

    두 가지 기능이 있습니다. find_host(...)에 free하고 싶은 기억을 main 기능에 할당했습니다. char* find_host(char* filename){ char *x = malloc(20); sprintf(x, filename); const char* t = "10"; int len = (int) str

    0

    2답변

    stdin에서 읽는 중입니다. 내가 읽어야 할 길이를 모르기 때문에 malloc을 사용해야한다. 은 가끔 무료 (TMP)하기 전에, 그것은 무료 (최종) 전에 발생, 포인터가 해제되는 때때로 할당되지 않은 얻고있다. 두 포인터가 모두 생성 된 후에 그리고 자유롭게되기 전에 두 포인터가 모두 null이 아닌지 확인합니다. 누군가 내가 잘못하고있는 것을 지적

    0

    2답변

    동적으로 생성 된 싱글 톤 객체를 삭제해야 할 때? 소멸자에서 객체를 명시 적으로 삭제해야합니까? 그렇지 않으면 삭제되지 않은 메모리는 일단 프로그램이 종료되면 OS/시스템에 의해 안전하게 청구됩니다. 삭제되지 않으면 어떤 결과가 발생합니까?

    -1

    1답변

    ipv6 주소의 마지막 2 열이 필요합니다. (2001 : 1234 : asdd : xeed : 212 : 4b00 : 61) -> (4b0061) 또한 ipv6_parser 함수의 반환을 해제하는 방법을 알아야합니다. 결과를 확보하려고 할 때 "세그먼트 오류"가 표시됩니다. char* ipv6_parser(char* str){ char *ret

    1

    3답변

    구조체 s1의 배열 (힙 상)에 포인터 p1이 있다고 가정합니다. 각 구조체 s1에는 힙에있는 다른 구조체 s2에 대한 포인터도 있습니다. 크기를 조정하기 위해 p1에 realloc()을 호출하면 미리 할당 된 배열의 구조체가 보유하고있는 이전 메모리가 해제됩니까 (힙의 s2s)? 문서에 if the area pointed to was moved, a fr

    1

    1답변

    에서 free()를 사용하지 왜 내가 당신을 위해 또 다른 초보자 질문이 있습니다. 이 함수는 전달 된 파일에서 모든 바이트를 읽고, 힙에 저장 한 다음 전달 된 'content'매개 변수와 전달 된 'length'매개 변수의 길이에 해당 바이트에 주소를 저장합니다. bool load(FILE* file, BYTE** content, size_t* leng

    1

    3답변

    그래서 문자열 배열을 동적으로 생성하고 있습니다. 그런 다음 해당 배열의 각 요소에 strtok을 호출하여 반환 된 포인터를 할당합니다. 내 프로세스의 마지막에 나는 내가 말한 배열의 요소의 포인터를 무료로 시도하고 모든 것을 다시 실행해야하지만 난 그게 이해가 것 *** glibc detected *** ./prgm: munmap_chunk(): inva

    2

    5답변

    나는 for 루프를 가진 함수를 가지고 있고 루프 내부에 (그리고 입력에 따라) 어떤 변수는 malloc()을 사용하여 한 번 (처음으로) 초기화된다. 이러한 변수는 다음과 같이 선언됩니다 static double *vector; 을 한 후 나는 malloc(size*sizeof(double)); 사용하여 메모리를 할당 질문 : 내가 이러한 변수를 해제

    2

    5답변

    나는 장치 포인터를 cudaMalloc에 ​​넣으려고하는데 malloc 중 하나가 작동하지 않으면 정상적으로 종료한다. 나는 작동하는 코드를 가지고있다. -하지만 부풀려 져야하기 때문에 부풀려 져야한다. 이전에 malloc 된 것이 있다면 실패 할 것이다. 그래서 지금이 작업을 수행하는보다 간결한 방법이 있는지 궁금합니다. 분명히 malloc'd되지 않은

    0

    2답변

    이 문제는 무엇인지 확신 할 수 없습니다. 두 번째 for 루프 (내부 배열을 해제해야하는 위치)를 제거하면 잘 실행됩니다. 귀하의 변수 board int main(void) { int i; char *board = malloc(sizeof(char *) * 8); for (i=0; i<8; i++) board[i]