프로그래밍 언어 별 차이 모음
2023. 2. 16. 22:47ㆍProgramming 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() 와 사용법이 동일하다.