.wav 파일 ... * ptr_8 및 * ptr_16 - 샘플 배열에 대한 포인터.오류 : '부호없는'앞에 예상 표현
내가 (---> 선언 * ptr_8 8 bitsPerSample ... 경우)
if (hdr.S1.BitsPerSample == 8) // Declaring array for samples. Depending
// on header's data (8 or 16 bits).
unsigned char *ptr_8;
else
if (hdr.S1.BitsPerSample == 16)
unsigned short *ptr_16;
문제 그것이 기록이다 헤더의 데이터에 따라 이러한 포인터를 선언 할 수있는 프로그램을 만들어 원하는 :
를(이 경우, *ptr_8
및 *ptr_16
을 선언해야 함) 이러한 종류의 동작이 나타나는 이유는 알 수 없지만. 무엇이 잘못되었는지 말해주십시오.
UPDATE : 그것을 알고 보니
, 선언은 컴파일 시간 개념 (아래 허용 대답 참조).
변수가 컴파일 중 선언되어 시스템의 리소스를 한 번 사용한 다음 (컴파일 된 응용 프로그램을 만들 때) 모두 이미 선언되어 있습니다. 프로그램을 최적화하는 최악의 방법 중 하나였습니다. ...
'hdr.S1.BitsPerSample == 8'을'true'로 대체하면 어떨까요? –
다음과 같이 씁니다 :''true '는 선언되지 않았습니다 (함수에서 처음 사용됨)'. – yulian