programing

memset() return value의 용도는 무엇입니까?

randomtip 2022. 8. 29. 21:51
반응형

memset() return value의 용도는 무엇입니까?

memset()반환을 선언하다void*이 값은 함수에 전달된 주소와 항상 같은 값입니다.

반품가치는 무슨 소용입니까?왜 안 돌아와?void?

다음과 같은 콜 체인에 사용할 수 있습니다.

char a[200];
strcpy(memset(a, 0, 200), "bla");

시그니처는 다른 모든 유사한 기능과 일치합니다.memcpy(),strcpy()기타. 저는 항상 이것이 이러한 함수에 대한 콜을 체인으로 하거나 표현에 그러한 콜을 사용할 수 있도록 하기 위한 것이라고 생각했습니다.

그렇지만, 나는 수익률을 그렇게 사용하지 않을 수 없는 현실세계의 상황을 본 적이 없다.

함수를 다음과 같은 다른 함수의 인수로 사용하려면sprintf

나는 어떤 memset이 반환되었는지 구글링할 때 이 질문을 발견했다.

하나의 값을 테스트하는 코드가 몇 개 있는데, 값이 0인지 확인하기 위한 테스트인지 확인합니다.

C에서는 제로를 테스트하는 완전한 휴대용 방법이 없기 때문에 중간에 memset을 실행해야 합니다.

그래서 내 코드는:

if ( a==true && (memcmp(memset(zeros, 0, sizeof(zeros)), b, sizeof(zeros)) == 0) )

이는 이전 질문에서 설명한 체인 목적과 일치하지만 이 기법을 사용하는 예입니다.

코딩이 좋은지 아닌지는 다른 사람에게 맡기겠습니다.

언급URL : https://stackoverflow.com/questions/13720428/whats-the-use-of-memset-return-value

반응형