[VI, VIM] 검색 시 대소문자 구분 안 하기


대소문자 구분 없이 검색하려면 검색어 뒤에 \c 옵션을 붙여주면 됩니다. (사실 아무데나 붙여도 됩니다.)

/Hello\c

라고 하면 Hello, hello, HELLO 등이 모두 다 검색됩니다.


[자바] JNI 시그니처 (Signiture)


JNI 작업을 엄청 하다가 갑자기 정리해놓고 싶어서 씁니다.

https://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/types.html 에 있는 내용을 번역했습니다.


타입 시그니처


Z : 부울 값

B : 바이트

C : 문자

S : 쇼트 정수

I : 인트 정수

J : 롱 정수

F : 플로트 실수

D : 더블 실수

L : 클래스-전체-경로 ; 클래스

[ : 배열

( 인자들 ) 반환형 : 함수


예를 들어 다음의 자바 함수를 생각해 보겠습니다.


long f (int n, String s, int[] arr); 


이 함수의 시그니처는 다음과 같습니다.


(ILjava/lang/String;[I)J


---

(제가 추가한 내용)

I는 정수 n, Ljava/lang/String;은 문자열 s, [I는 정수 배열 arr이고 J는 반환값 long을 뜻합니다.


[LaTeX] latex에서 한글 사용하기


\usepackage{kotex}


를 추가하시면 LaTeX에서 한글을 사용할 수 있습니다.

[VI, VIM] 짝 맞는 괄호 찾기


%키를 누르면 지금 커서가 위치하는 곳에 있는 괄호와 짝이 맞는 괄호를 찾아줍니다.

[VI, VIM] 마지막으로 사용한 명령 반복하기


. (마침표) 를 누르면 마지막으로 내렸던 명령이 반복됩니다.

코틀린의 문자열에서 부분 문자열을 뽑아내려면 아래와 같이 slice라는 함수를 사용하면 됩니다.

 

var 문자열 = "안녕하세요"

var 범위 = IntRange(0, 3) // 0, 1, 2, 3 포함

println(문자열.slice(범위))

---

<출력 결과>

안녕하세

 

선언해놓고 사용하지 않은 변수가 있으면 원래는 컴파일러가 경고를 합니다. 그런데 변수 앞에


__attribute__((unused))


를 써 놓으면 컴파일러가 경고를 하지 않습니다.

[자바] 코드 실행 시간 측정하기 (System.currentTimeMillis())


프로그래밍을 하다 보면 코드 특정 부분의 실행 시간을 측정해야 하는 경우가 생깁니다.

그럴 때에 아래와 같이 System.currentTimeMillis() 함수를 사용하면 밀리초 단위로 시간을 잴 수 있습니다.

System.currentTimeMillis() 의 반환 변수 형식은 long 입니다.


long 시작시간 = System.currentTimeMillis();

// 여기서 원하는 작업을 해 줍니다.

long 끝시간 = System.currentTimeMillis();

long 걸린시간 = 끝시간 - 시작시간;

System.out.println("걸린 시간: " + 걸린시간 + " 밀리초");


아래 명령어로 리눅스 종류와 버전을 확인할 수 있습니다.


grep . /etc/*-release


제가 사용하는 서버에서는 아래와 같은 결과가 나오네요.


/etc/centos-release:CentOS Linux release 7.4.1708 (Core) 

/etc/os-release:NAME="CentOS Linux"

/etc/os-release:VERSION="7 (Core)"

/etc/os-release:ID="centos"

/etc/os-release:ID_LIKE="rhel fedora"

/etc/os-release:VERSION_ID="7"

/etc/os-release:PRETTY_NAME="CentOS Linux 7 (Core)"

/etc/os-release:ANSI_COLOR="0;31"

/etc/os-release:CPE_NAME="cpe:/o:centos:centos:7"

/etc/os-release:HOME_URL="https://www.centos.org/"

/etc/os-release:BUG_REPORT_URL="https://bugs.centos.org/"

/etc/os-release:CENTOS_MANTISBT_PROJECT="CentOS-7"

/etc/os-release:CENTOS_MANTISBT_PROJECT_VERSION="7"

/etc/os-release:REDHAT_SUPPORT_PRODUCT="centos"

/etc/os-release:REDHAT_SUPPORT_PRODUCT_VERSION="7"

/etc/redhat-release:CentOS Linux release 7.4.1708 (Core) 

/etc/system-release:CentOS Linux release 7.4.1708 (Core)

그래들 파일에 다음 코드를 추가한 뒤 실행해주면 build/libs 에 opencv-android.jar 파일이 생성됩니다.


task jar(type: Jar) {

    from 'build/intermediates/classes/release/'

    archiveName 'opencv-android.jar'

}

+ Recent posts