분류 전체보기 65

[파이썬] 파이썬 string 여러 형태 지정

파이썬 클론코딩 연습 중에 여러가지 지정을 할 수 있다는 것을 알게 되었다. 문자열을 더할 수 있는 것, %s %d등을 사용할 수 있는 것은 알고 있었는데, f"{변수} 123" "문자열 {변수}".format(변수="456") 은 처음 알게 되었다. 자연스럽게 사용이 되는 것을 볼 수 있다. 케이스에 따라서 print("hello" + b + ", welcome to " + world_name) 이런식으로 더해서 쓰는 것 보다 print(f"hello {b}, welcome to {world_name}") 으로 직관적으로 사용이 가능할 것 같다. f"{abc}" 에 있는 중괄호에는 함수 호출도 가능하고 변수 * 100 같은 것도 가능하다. 그리고 print함수는 개행을 자동으로 해 주는데, 개행을 자동..

개발, 연습 2021.04.28

m1 맥북 롤 보이스 설정 활성화

맥에서 롤 자체 보이스를 사용하게 하기 위한 설정. (M1 Big sur 기준) 시스템 종료 후 전원버튼을 꾹 누르고 있으면 안전모드로 돌입하고, 환경설정 모양 눌러서 진입하여 사용자 계정 암호를 물어보면 암호 입력 후 한 번 더 진입 위에 유틸리티에 터미널을 열고 csrutil disable 그 이후 아래 터미널에서 실행하면 되는데 복붙이 안되니 재부팅 후 쉘에서 실행시켜도 됨 더보기 #!/bin/zsh # 출처 : https://www.reddit.com/r/leagueoflegends/comments/k218hl/how_to_fix_voice_chat_on_macos_big_sur/ # 출처 : https://www.clien.net/service/board/cm_mac/15817044 # 리그오브..

잡다한것 2021.03.25

[재미] 아두이노 레오나르도 스타크래프트 매크로

아버지가 스타크래프트를 즐겨하시는데, 컴퓨터와 사용자설정으로 돈치트를 사용해서 시간도 때울 겸 즐기신다. 이전부터 아두이노 레오나르도가 키보드 마우스 제어가 가능한 것은 알고 있었는데, 연습으로 이것저것 만져보다가 업로드를 잘못해서 usb를 꼽기만 해도 마우스가 무한정 올라갔다. 원래 아두이노 우노는 초기화 버튼을 누르면 초기화가 되는데, 레오나르도는 초기화 버튼이 초기화가 되지 않는 것 같다. 검색해보니 업로드 시 뭣땜시 usb를 뺐다 꼽는듯한 전기신호를 보낸다는데, 업로드 중에 끊어졌다 다시 붙으면 시리얼 포트가 달라질 수 있기 때문에 리셋 버튼을 누른 상태로 업로드하는게 업로드의 정석인것 같다. 리셋 버튼을 누른채로 업로드를 눌러 업로드..가 뜨면 떼라는데, 타이밍 맞추기 너무 어렵다. 아무튼 이전..

개발, 연습 2021.03.17

리버싱kr easy_elf 풀이

맆케알의 easy_elf 문제를 풀어보기로 했다. 실행시 첫 줄이 출력되고 입력을 받는다. 1234를 입력했더니 Wrong를 출력하고 꺼진다. radare2로 프로그램을 열어보았다. 함수 목록을 띄워주는 afl명령어를 쳐 보았더니 엔트리와 메인이 나뉘어져 있다. 메인 함수부터 디스어셈된 데이터를 구경해보자. 메인 함수에서 Easy_ELF출력을 위해 write 함수 사용 전에 인자를 넣는 모습을 볼 수 있다. write 함수를 call 후 알 수 없는 함수 2개를 call, 그 이후에 eax와 1을 비교해 eax가 1이 아니면 jmp를 하여 Wrong을 출력하는 것을 메인 함수에서 알 수가 있었다. 그럼 맞췄을 땐 뭐라고 하는지 찾아봐야겠다. strings를 이용해 문자열이 뭐가 있는지 찾아봤다. Corr..

vscode extension installation from VSIX

vscode는 확장프로그램을 설치할 수 있는데, extensions 탭에서 설치하는게 아닌 확장 프로그램을 직접 다운받아서 설치가 가능하다. 유명한 확장 프로그램인 c/c++을 설치한다고 하면, https://marketplace.visualstudio.com/ 에 들어가서 원하는 확장 프로그램을 찾은 뒤에 오른쪽 아래에 Download Extension을 찾아서 VSIX파일을 직접 다운로드 받는다. 그 후에 vscode를 열어 Ctrl + Shift + P (Command Palette)를 열고 Extensions: install from VSIX를 눌러 VSIX 파일을 찾아서 눌러주면 된다. 그럼 자동설치가 된다. 사용하는 확장 프로그램 : C/C++ 더보기 C/C++ 여기서 vsix를 직접 다운로드..

개발, 연습 2020.12.20

개발자 맞춤 키보드 커스텀 세팅

youtu.be/47pu4yI2Zcs 출처 : 개발자 라라 유튜브 개발자 라라 유튜브에서 오토핫키를 알게 되어 사용해본다. 개발자 라라 님의 유튜브에 있는 오토핫키 설정파일을 조금 수정하여 사용하려고 한다. 윈도우 더보기 키 맵핑에 관하여이다. Alt 조합과 I J K L 키를 이용하여 방향키 사용이 가능하고 Alt 조합과 U, O 키를 이용하여 각각 Home, End를 사용 할 수 있게 해 보았다. ALT::return !j:: Send {Left} !k:: Send {Down} !l:: Send {Right} !i:: Send {Up} !u:: Send {Home} !o:: Send {End} ALT::return !j:: Send {Left} !k:: Send {Down} !l:: Send {Rig..

잡다한것 2020.11.30

[C++] 예외 처리

c++에서는 예외처리를 지원한다. 기본적으로 문법은 이렇다. try { //예외가 일어날 수 있는 코드 //예외가 일어나면 throw 예외객체; } catch (/* 예외 객체 매개변수 */) { //예외 처리 } 그리고 표준으로 예외 객체를 지원하는데, std::exception 객체이다. std::exception 객체를 상속받아 객체 클래스를 구현하고 사용하여도 되고, std::exception 객체를 상속받은 표준 예외 처리 객체를 사용하여도 된다. std::exception 객체의 가상 함수인 what() 함수를 사용하여 기본적인 예외 객체의 문자열을 출력하게 할 수 있다. 그리고 모든 예외를 받고 싶다고 하면 catch(...)을 이용하여 예외를 받으면 다른 모든 예외를 받을 수 있다. 그러나..

개발, 연습 2020.07.11