Amazon Best VPN GoSearch

온웍스 파비콘

복잡성 - 클라우드에서 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 제공업체에서 복잡성을 실행합니다.

이는 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공자에서 실행할 수 있는 명령 복잡성입니다.

프로그램:

이름


복잡성 - C 소스의 복잡도 측정

개요


복잡성 [-깃발] [-깃발 [가치]] [--옵션 이름[[=| ]가치]] [ ... ]

이 프로그램이 작동하는 피연산자는 명령줄이나
한 줄에 하나씩 표준 입력에서 읽습니다. 해당 입력에서 선행 및 후행 공백
제거되고 빈 줄은 무시됩니다. 표준 입력은 터미널이 아닐 수 있습니다.

단순히 경로별 코드 계산이 아닌 소스 코드의 복잡성을 계산합니다.
또한 논리 수준 중첩을 통해 줄 수를 확대합니다.

주석이 아닌 소스의 줄을 세고 곱하여 코드의 복잡성을 계산합니다.
중첩된 논리 가중치 계수입니다. 기본값은 1.9입니다.

기술


각 명령문의 가중치는 명령문이 사용하는 줄 수입니다. 이 값은
각 논리 계층에 대해 중첩된 논리 가중치(기본값 1.9)를 곱합니다.
예를 들어, 이 스니펫:

if (foo) {
if (막대) {
범블;바즈;
}
}

11점을 획득합니다. 이 점수는 대략적으로 조정됩니다. pmccabe 20으로 나누어서 결과
반올림합니다. 마지막에 "1"이 나옵니다. pmccabe 간단한 절차에서 더 높은 점수를 받습니다.
복잡성 더 깊이 중첩된 논리로 더 높은 점수를 얻습니다.

점수는 조정을 통해 조정할 수 있습니다. --중첩-페널티 그리고 --규모-ing 요인.
기본값은 수백만 줄의 평균 결과를 비교하여 보정되었습니다.
코드의 결과 pmccabe.

이 프로그램의 목적을 위해 프로시저는 이름 뒤에 다음이 붙은 것으로 식별됩니다.
괄호로 묶인 표현식과 여는 중괄호로 시작합니다. 닫는 중괄호로 끝납니다.
1열에 중괄호를 넣습니다.

이 프로그램은 명령줄에 명명된 모든 파일 또는 모든 파일에 대해 기능을 수행합니다.
stdin에서 읽은 목록에 이름이 지정된 파일. 인수 또는 입력 이름은 기존에 있어야 합니다.
파일. 입력 목록에는 주석이 포함될 수 있습니다. 주석은 다음으로 시작하는 빈 줄 또는 줄입니다.
'#' 문자.

옵션


-t 최저한의, --한계점=최저한의
보고 임계값. 이 옵션은 정수를 인수로 사용합니다.
디폴트 값 최저한의 이 옵션의 경우:
30

이 임계값보다 낮은 복잡도 측정값을 갖는 모든 절차를 무시합니다. 기본적으로
30 미만의 복잡도 점수는 인쇄되지 않습니다. 그러나 히스토그램과
통계는 인쇄되지만 개별 절차 점수는 인쇄되지 않는 경우 기본값
0으로 설정됩니다. 이 한도 미만의 프로시저는 통계에 포함되지 않습니다.

--끔찍한 임계값=최저한의
종료 임계값이 0입니다. 이 옵션은 정수를 인수로 사용합니다.
디폴트 값 최저한의 이 옵션의 경우:
100

어떤 절차가 이 임계값보다 높은 점수를 받으면 프로그램은 종료됩니다.
영. (4/복잡한 종료_끔찍한_함수, 다른 문제가 발생하지 않으면.)
기본적으로 이 프로그램은 하나의 함수가 끔찍한 점수를 초과하지 않는 한 0으로 종료됩니다.
100.

-n 인자, --중첩-페널티=인자
중첩된 코드에 대한 점수 배수.

언어 구성 요소는 더 깊이 중첩될수록 더 큰 가중치를 갖습니다.
기본적으로 각 레이어는 1.9배의 페널티를 받습니다. 옵션 인수는 다음과 같습니다.
부동 소수점 숫자. 페널티는 1일 수 있지만 그보다 작을 수는 없습니다.

--데미-네스팅-페널티=인자
중첩된 표현식에 대한 점수 배수.

기본적으로 이 값은 1.0과 중첩 페널티 사이의 중간입니다.
(특히 중첩 페널티의 제곱근). 이는 다음을 나타냅니다.
괄호로 묶인 하위 표현식. 예:
((a > b) && (c > d))
괄호로 묶인 하위 표현식이 두 개 포함되어 있습니다. 이는 3.5점으로 계산됩니다.
다른 한편, 이것:
(a > b && c > d)
동일한 수준에 두 개의 관계 연산자와 하나의 논리 연산자가 포함되어 있습니다.
중첩된 카운트는 함께 곱해져 생성됩니다. 2.5 * 2.56.25하지 마세요
그게요. 같은 레벨에 논리적으로 and와 or가 있다면 상황은 더 나빠집니다.

-s 인자, --규모=인자
복잡도 스케일링 계수입니다. 이 옵션은 정수를 인수로 사용합니다.

기본적으로 스케일링은 원시 점수를 20으로 나누는 20입니다.
대략적으로 대응하도록 정규화됨 pmccabe 점수:

0-9 유지 관리가 쉬운 코드.

10-19 별다른 문제 없이 유지 관리되었습니다.

20-29 약간의 노력으로 유지 관리됨.

30-39 코드를 유지 관리하기 어렵습니다.

40-49 코드를 유지하기 어렵습니다.

50-99 유지보수가 불가능한 코드.

100-199 미친놈이 어려운 코드를 만드는구나.

200+ 농담이었으면 좋겠어.
점수 | ln-ct | nc-lns| 파일 이름(줄): proc-name
4707 3815 2838 라이브러리/vasnprintf.c(1747): VASNPRINTF

-h, --히스토그램, --히스토그램 없음
복잡도 숫자의 히스토그램을 표시합니다. 히스토그램 없음 양식이 비활성화됩니다
옵션입니다. 이 옵션은 환경 변수나
초기화(rc) 파일.

각 기능의 점수를 출력하는 대신, 요약을 끝에 출력합니다.
특정 점수 범위를 가진 함수의 수를 보여줍니다. --점수 is
특별히 호출된 경우 이 옵션을 지정하면 점수가 인쇄되지 않습니다.
최소 득점 임계값도 0으로 낮아집니다. --한계점 is
지정되었습니다.

-c, --점수, --점수 없음
각 절차의 점수를 표시합니다. 무득점 양식은 옵션을 비활성화합니다.
이 옵션은 환경 변수나 초기화(rc)에서 미리 설정되지 않을 수 있습니다.
파일.

지정한 경우 --히스토그램, 개별 점수는 이것이 아닌 한 표시되지 않습니다.
옵션이 지정되었습니다.

-I , --무시하다=
무시할 프로시저 이름입니다. 이 옵션은 무제한으로 나타날 수 있습니다.

일부 코드에는 어휘 분석을 혼란스럽게 하는 매크로가 정의되어 있습니다. 이로 인해
무시되도록 설정합니다. 함수를 무시하는 다른 방법은 다음과 같습니다.

프로시저 헤더에 K&R 구문을 사용합니다.

전처리 매크로를 사용하여 프로시저 헤더를 조립합니다.

코드를 단순화하세요.
일반적으로 말해서, 정상적인 C 구문을 변경하는 모든 작업은 다음을 혼동시킵니다.
어휘 분석. 절차가 보이지 않으면 계산되지 않습니다.
프로시저 내의 코드가 이해할 수 없는 경우 부적절한 결과를 얻을 가능성이 높습니다.
결과.

-H, --헤더 없음
점수 헤더를 인쇄하지 않습니다. 이 옵션은 환경 변수에 따라 미리 설정되지 않을 수 있습니다.
변수 또는 초기화(rc) 파일에서.

스크립트가 점수 출력을 처리할 경우 구문 분석이 더 쉽습니다.
헤더. 히스토그램 출력에는 항상 헤더가 포함됩니다.

-u unifdef-opt, --유니프데프=unifdef-opt
소스를 실행하세요 유니프데프(1BSD). 이 옵션은 무제한으로 나타날 수 있습니다.
횟수.

다음으로 둘러싸인 코드 섹션을 제거합니다. #if/#endif 지시어. 옵션
인수는 인수로 전달됩니다. 유니프데프(1BSD) 프로그램. 예를 들어:
복잡성 -u-D심볼
원인이된다. 상징 정의하고 앞에 있는 코드 섹션을 제거합니다. #ifndef
상징 가이드 라인.

를 참조하십시오 유니프데프 자세한 내용은 설명서를 참조하십시오.

--unif-exe=음식물
unifdef 프로그램을 지정합니다.

입력을 unifdef-ing하는 데 사용할 대체 프로그램입니다.

-i 파일 이름, --입력=파일 이름
파일 목록의 파일.

입력 파일의 명령줄 목록이나 표준에서 읽는 대신
입력, 이 파일에서 파일 목록을 읽습니다.

--추적하다=파일 이름
추적 출력 파일.

중간 점수를 추적 파일에 인쇄합니다.

-?, --도움
사용 정보를 표시하고 종료합니다.

-!, --추가 도움말
호출기를 통해 확장된 사용 정보를 전달합니다.

-> [cfg 파일], --저장 옵션 [=cfg 파일]
옵션 상태 저장 cfg 파일. 기본값은 지난 구성 파일
에 나열 OPTION 프리셋 섹션, 아래. 업데이트 후 명령이 종료됩니다.
구성 파일.

-< cfg 파일, --로드 옵션=cfg 파일, --무부하 옵션
로드 옵션 cfg 파일. 그만큼 무부하 옵션 양식은 로드를 비활성화합니다.
이전 config/rc/ini 파일. --무부하 옵션 조기에 처리되지 않습니다.

-v [{v|c|n --번역 [{v|c|n}]}]
프로그램 버전을 출력하고 종료합니다. 기본 모드는 단순 버전인 `v'입니다.
`c' 모드는 저작권 정보를 인쇄하고 `n'은 전체 저작권을 인쇄합니다.
주의.

OPTION 프리셋


로 표시되지 않은 모든 옵션 지원 사전 설정 가능 에서 값을 로드하여 사전 설정할 수 있습니다.
구성("RC" 또는 ".INI") 파일 및 다음과 같은 환경 변수의 값:
복잡성_ or 복잡성
환경 사전 설정이 구성보다 우선 적용됩니다(나중에 처리됨).
파일. 그만큼 홈크 파일은 "$@/complex.conf""$ HOME""$PROJECT_ROOT/complex.conf"
".". 이들 중 하나라도 디렉토리인 경우 파일 .복잡성rc 내에서 검색됩니다
해당 디렉토리.

환경


OPTION 프리셋 구성 환경 변수용.

onworks.net 서비스를 사용하여 복잡성을 온라인으로 활용하세요


무료 서버 및 워크스테이션

Windows 및 Linux 앱 다운로드

Linux 명령

Ad




×
광고
❤️여기에서 쇼핑, 예약, 구매하세요. 비용이 들지 않아 서비스를 무료로 유지하는 데 도움이 됩니다.