xcode 컴파일러 문제 - 매개변수 유형 식별 오류, EXCBAD_ACCESS
1462 단어 memoryexc_bad_accessreadfrom
-(void) getLoadPageCommentAndTopicVid:(long long)vid cid:(long)cid site:(long)site title:(NSString*)title videoUrl:(NSString*)videoUrl more:(BOOL)more commentGetCommpletionBlock:block commentGetFailtureBlock:block{
}
이 함수를 호출할 때 EXC 가 나타납니다BAD_ACCESS;콘솔 비트에서 다음을 수행합니다.
* thread #1: tid = 0x2503, 0x32b59522 libobjc.A.dylib`objc_retain + 2, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x2) frame #0: 0x32b59522 libobjc.A.dylib`objc_retain + 2 frame #1: 0x32b67b86 libobjc.A.dylib`objc_storeStrong + 22 * frame #2: 0x0006f978 xxxxxx`-[AppDelegate(self=0x1dd71420, _cmd="getLoadPageCommentAndTopicVid:cid:site:title:videoUrl:more:commentGetCommpletionBlock:commentGetFailtureBlock:", vid=8500161, cid=6, site=0, title=0x00000000, videoUrl=0x0c29a000, more=YES,commentGetCommpletionBlock=
창고 알림에 따라 Block 매개 변수를 읽는 데 문제가 있으면 나중에 Block을 자세히 찾아보기;Block 정의에 문제가 없음을 발견했습니다.나중에 매개 변수의 위치를 정하고 드디어 vid 매개 변수,site 매개 변수의 문제를 정합니다.만약 site 매개 변수가 0을 전달한다면, 이 함수를 호출할 수 있으며, 1 (0이 아닌) 호출이면 위의 충돌이 발생할 수 있습니다.
[추측]: xcode 컴파일러가 이 int를 바늘이나 다른 형식으로 삼아 뒤에 있는 매개 변수의 읽기 오류를 초래할 수 있습니다.첫 번째 파라미터가 롱롱인 것 같은데 문제가 있을 것 같아요.
【해결】:vid,site 매개 변수를 대상으로 합니다.롱롱 대신 NSNumber*를 사용하십시오.NSInteger로 해결
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
std::initializer_list를 사용한 초기화에는 복사가 포함됩니다.STL 컨테이너를 초기화하는 편리한 방법은 다음과 같이 초기화 목록을 사용하는 것입니다. 벡터 생성자의 인수는 먼저 생성된 다음 복사됩니다. std::initializer_list 의 특성입니다. 매개변수가 일부 리...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.