프로그래밍 언어 별 차이 모음

2023. 2. 16. 22:47Programming language

'연결 리스트'라는 자료구조를 이용해 인접 리스트를 구현할 때

 

- JAVA/C++ vs Python

  • C++나 자바와 같은 프로그래밍 언어에서는 별도로 연결 리스트 기능을 위한 표준 라이브러리를 제공
  • 파이썬에서는 리스트 자료형이 append()와 메소드를 제공하므로 연결 리스트와 유사한 동작을 수행할 수 있기 때문에 인접 리스트를 구현할 때 일반적으로 2차원 리스트를 사용

 

공백, 혹은 줄 바꿈을 기준으로 데이터를 구분할 때

 

- C/C++ vs Python

  • C/C++에서 입력 받는 함수 scanf()는 이 둘을 모두 동일하게 처리
  • 파이썬에서 구분자가 줄 바꿈인지[ 'int(input())' 여러 번 사용 ] 공백인지[ 'input().split()'  ]에 따라 다른 처리

 

문자열 슬라이싱이 가능한 언어

 

- Python, JavaScript, Java, C#, Kotlin언어는 문자열을 시퀀스로 취급하고, 따라서 문자열의 일부를 추출하는 슬라이싱을 지원한다.

 

- C언어에서는 문자열 슬라이싱을 직접적으로 지원하지 않는다. 따라서 문자열을 슬라이싱하는 것은 직접 문자열의 일부를 복사하여 새로운 문자 배열을 만들어야 한다.

#include <stdio.h>
#include <string.h>

int main() {
    char str[] = "Hello, world!";
    char sliced[10]; // 새로운 문자 배열을 저장할 변수

    // 문자열을 슬라이싱
    strncpy(sliced, str + 7, 5); // str의 7번째 인덱스부터 5개 문자를 sliced에 복사
    sliced[5] = '\0'; // 널 종료 문자 추가

    printf("Sliced string: %s\n", sliced);
}

 


 

C 프로그래밍의 printf() 메소드는
Java의 System.out.printf() 와 사용법이 동일하다.