내 질문에는 중요하지 않기 때문에 코드를 포함시키지 않았지만, if (g_sound == 1){printf("\a");}
과 같은 문구 (물론 짧은 예제 만 사용하고 있습니다)를 사용하면 어떻게이 코드를 사용할 수 있습니까? 너무 반복성이없는 동안 내 프로그램? 거기에 링크 할 수있는 변수의 유형이 있습니까? 그리고 그 변수에 코드가 실행되어 있습니까? 그래서 내 코드의 절반이 반복해서 똑같은 것이 아닙니다 ... 모든 도움을 많이 받으실 수 있습니다! 업데이트 : 유용한 의견을 보내 주셔서 감사합니다. 함수를 사용하는 것이 실행해야하는 20 줄 코드이므로 가장 최적이라고 생각했습니다! 다시 한번 감사합니다! 문 정말 간단 경우C에서 반복 감소시키기
-2
A
답변
1
(또는 적어도 최적) 다음 매크로 사용 : 다음 매크로는 다음과 같이 사용된다
#define THIS_IS_NOT_A_FUNCTION(X) if (x == 1){ printf ("\a");}
을 :
// do some tedious task that I can't be bother typing out fully:
THIS_IS_NOT_A_FUNCTION(g_sound);
데이비드 C. 순위가 지적 그의 코멘트에서, 매크로는 정의 된 값 사전 컴파일 시간으로 확장되므로 함수를 호출하는 오버 헤드가 없습니다. 단점은 매크로가 너무 자유롭게 사용되면 코드가 읽을 수 없게 될 수 있다는 것입니다.
복잡한 연산 인 경우 함수를 작성하고 호출하는 데 비용이 부과 될 수 있습니다.
관련 문제
- 1. 안드로이드 게임에서 반복 감소시키기
- 2. 증가 루프에서 변수 감소시키기
- 3. numpy로 축 감소시키기
- 4. 자바 스크립트 기능 감소시키기
- 5. Stop 하둡에서 기능 감소시키기
- 6. 알파벳 값 감소시키기
- 7. C에서 다른 순서로 반복 #
- 8. C에서 json 객체 반복 #
- 9. C에서 반복 루핑 메서드를 #
- 10. CUDA의 행 또는 열 감소시키기
- 11. C에서 float 범위를 반복 함
- 12. C에서 마지막 행의 gridview에 반복 #
- 13. Objective-C에서 무작위 반복 없음
- 14. C에서 WAV 파일 자동 반복 #
- 15. C에서 Linq로 반복 그룹 피하기
- 16. Bash For Loop : 변수에서 시작하여 감소시키기
- 17. 레일의 모든 행의 db 값 감소시키기
- 18. C에서 단어 단위로 반복 할 수있는 방법
- 19. C에서 동일한 유형의 구조체 멤버 반복 Iterating
- 20. C에서 입력을 통해 프로그램 반복 받기
- 21. C에서 누락 된 .dat 파일/반복 레코드
- 22. Objective-C에서 빠른 열거 형은 반복 순서를 보장합니까?
- 23. C에서 foreach를 사용하여 int 배열을 반복적으로 반복 할 수 있습니다.
- 24. Word Com Interop : C에서 Word 문서의 모든 범위 반복 #
- 25. 문자열을 반복 할 때 C에서 세분화 오류가 발생했습니다.
- 26. C에서 높은 반복 루프가있는 프로그램에서 출력을 제공하지 않습니다. 왜?
- 27. C에서 중첩 된 반복 컨트롤에 대한 툴팁이 작동하지 않습니다.
- 28. 반복 입력
- 29. 반복 스크립트 반복
- 30. 파일 이름 반복 반복
그게 기능입니다. – tzaman
그리고 전 처리기 매크로. –
거의 고려하지 않고 있지만 함수 호출에 약간의 오버 헤드가 추가된다는 사실을 알고 있어야합니다. 매크로 호출은 전처리 기가 그대로 매크로로 대체됩니다. 목표는 항상 가독성과 유지 보수성이 있어야합니다. tzaman과 Lee는 귀하의 옵션을 커버하므로 구현에 가장 적합한 결과를 찾기 위해 필요에 맞게 균형을 맞추기 만하면됩니다. 매크로 작성을 처음 사용하는 경우 미묘한 뉘앙스가 있으므로 해당 경로로 이동하면 통증이 없어 질 수 있습니다. –