Makefile 초기 탐색 3 - 변수의 할당 연산 자
= 할당 변 수 를 사용 합 니 다. 분 석 될 때 그의 값 은 마지막 할당 시의 값 에 달 려 있 습 니 다. 따라서 변수 가 인용 한 값 을 볼 때 앞 만 볼 수 없고 뒤 를 봐 야 합 니 다.
메모: Makefile 에 서 는 할당 연산 자 양쪽 에 빈 칸 이나 빈 칸 이 있어 야 한 다 는 것 을 요구 하지 않 습 니 다. 이 점 은 셸 의 형식 요구 보다 느슨 합 니 다.
1 A=abc
2 B=$(A)def
3 A=gh
4
5 all:
6 echo $B
출력:
exbot@ubuntu:~/liyijun$ make all
echo ghdef
ghdef
(2): = 일반적으로 도 할당
사용: = 값 을 부여 하 는 것 은 현지에서 직접 해석 하고 앞 만 보면 됩 니 다.
1 A=abc
2 B:=$(A)def
3 A=gh
4
5 all:
6 echo $B
출력:
exbot@ubuntu:~/liyijun$ make all
echo abcdef
abcdef
해석 하 는 사람 은 다음 과 같다. 혹은 A 는 = 이지 만 B 는: = 이 므 로: = 에 따라 집행 한다.
(3)?=
변수 가 할당 되 지 않 았 다 면 이 할당 을 실행 합 니 다. 앞 에 할당 되 어 있 으 면 이 줄 은 무 시 됩 니 다.(실험 을 통 해 알 수 있 듯 이 할당 되 지 않 은 것 은 바로 이 변수 가 정의 되 지 않 은 것 이다)
실례 1:
1 var=abcd
2 var?=ef
3
4 all:
5 echo $(var)
출력:
abcd
실례 2:
1
2 var?=ef
3 var=abcd
4 all:
5 echo $(var)
출력:
abcd
실례 3:
2 var?=ef
3 var=
4 all:
5 echo $(var)
출력 이 비어 있 으 니 빈 값 도 할당 한 셈 입 니 다.
(4)+=
이미 할당 한 변 수 를 연결 하 는 데 사용 합 니 다. 이 값 을 원래 값 뒤에 추가 하 는 것 은 strcat 와 유사 하 다 는 뜻 입 니 다.(셸 Makefile 등 파일 에서 모든 변 수 는 문자열 이 라 고 볼 수 있 습 니 다. + = 문자열 stcat 에 연결 하 는 내용 과 같 습 니 다) (디 테 일 을 주의 하 십시오. + = 연결 하 는 내용 과 원래 내용 사이 에 자동 으로 빈 칸 을 추가 합 니 다)
실례:
1 var=ab
2 var+=cd
3 all:
4 echo $(var)
5 var+=ef
출력:
ab cd ef
REF:
주 선생님 강의
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.