오류: 매개 변수에 대해 지정된 저장소 클래스
나는 C코드를 썼다.Linux에서 컴파일하면 헤더 파일에 다음과 같은 오류가 표시된다.storage class specified for parameter i32 , i8
등등.
typedef int i32;
typedef char i8;
헤더 파일에 세미콜론을 잊어버렸을 가능성이 높다.각 행의 끝 부분 확인;
나도 같은 경험을 했다.문제는 기능 선언이 끝날 때 세미콜론이 빠진 헤더 파일의 기능 프로토타입 선언에 있었다.
이 함수는 컴파일 로그에 "In function ..."로 표시되었다." 오류 코드 조각 바로 앞에
이게 도움이 되길 바래!!
에러 메시지의 전체 텍스트에 표시될 수 있는 코드가 어딘가에 있을 경우 다음과 같은 작업을 수행할 수 있다.
void function(static int foo)
그static
거기는 허용되지 않는다.또한 다음과 같은 다른 스토리지 클래스가 될 수 있다.register
또는extern
.
나도 한 번 같은 실수를 한 적이 있어.해결책은 파일을 둘러보고 보류 중인 문장(비닫힘 괄호 또는 누락된 세미콜론 등)을 찾는 것이었다.보통은 정말 사소한 실수지만, 컴파일러는 불평한다.
나쁜 소식은 그것이 항상 올바른 선에서 불평하지 않는다는 것이다. (혹은 올바른 파일에서도 불평하지 않는다!)좋은 소식은 이 경우 다음과 같은 유용한 내용을 담고 있다는 것이다.
WRONGFILE.h: In function ‘FUNCTION_OF_ANOTHER_FILE_WRT_WRONG_FILE’"
WRONGFILE:line:col: error: storage class specified for parameter ‘param’ before.
보고된 다른 파일을 체크 인하십시오.
덧붙이자면;
: 또 다른 경우는 실종이 될 수 있다.)
함수 포인터 선언에서:
extern void init_callbacks(void (*init)(), void (*end());
(다음부터 닫힘 괄호*end
).
vim 편집기를 사용하는 경우 다음을 입력하면 누락된 세미콜론을 쉽게 찾을 수 있다.
/[^;]\s*$
... 문제가 있는 선이 발견될 때까지 (N/n으로) 위/아래로 점프한다.
오류가 정적 할당에서 스토리지 클래스 이름이 누락되는 동안 나도 비슷한 문제가 있었다.예:
.h:
class MyClass {
static const int something;
}
.cpp:
const int something = 1; // returns error
const int MyClass::something = 1; // OK
참조URL: https://stackoverflow.com/questions/3676969/error-storage-class-specified-for-parameter
'programing' 카테고리의 다른 글
Vuex 모듈을 올바르게 로드하는 방법 (0) | 2022.04.16 |
---|---|
Vuex 스토어에서 Axios 예외를 포착하여 Vue.js 메서드에 저장 (0) | 2022.04.16 |
상위 구성 요소에서 하위 폼 데이터를 가져오는 VueJs (0) | 2022.04.16 |
활성 항목의 스타일링(vue.js) (0) | 2022.04.16 |
메이븐 공예품이란 무엇인가? (0) | 2022.04.16 |