파이썬으로 문제를 쭉 풀어보면서 이렇게 쉬워도 되나 싶은 느낌이 들어서 다른 언어는 얼마나 다를지 궁금해서 언어별 hello world 출력을 해보기로 했습니다.
코딩 테스트는 C++ , JAVA , Python 이 세 가지 언어가 주로 사용되는 것 같습니다.
python
print("Hello World!")
파이썬은 간결하게 Print 하나로 출력 하면 끝입니다.
JAVA
class Main {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
자바는 헬로월드 출력하는데 많은 글자들이 있는데 이것이 기본 문법입니다. 해설을 해보자면
일단 자바의 특징은 메모리를 자동으로 관리합니다 (Garbage Collector)
그리고 무조건 1개 이상의 class가 존재해야됩니다.
public 은 모든 곳에서 접근이 가능한데 main 함수는 무조건 public을 지정해야됩니다. main이 기본이 되는 메소드 이기때문에 모든곳에서 접근이 필요하기 때문이죠 그리고 기본이 되는 메서드이기에 사라지면 프로그램이 죽습니다.
static 은 고정된, 정적의 라는 뜻을 가졌는데 Garbage Collector으로 인해 main 메서드는 사라지면 안 되기에 static으로 선언하여 메모리에 항상 고정되어있도록 합니다.
void는 없다, 비어있다 라는 뜻을 가져서 함수가 끝날 때 return 값이 없습니다. 기본 메서드는 void를 사용해야 됩니다.
main 은 자바를 실행시킬 때 자바가 main 메서드를 찾아서 실행시킵니다.
String [] 은 문자열을 뜻합니다.
args에서 main 메서드는 args라는 문자열 배열을 파라미터로 받습니다. args는 arguments의 약자로 의미보단 약속인 것 같습니다. args 가 아닌 abcd라고 써도 맞았다고 뜹니다. 하지만 args로 쓰는 것을 익히는 것이 도움될 것 같습니다.
system은 입력이나 출력 등 시스템에 관련된 기능을 가진 클래스입니다.
out 은 출력
println에서 print는 출력하다 + ln (Line)은 마지막에 엔터처럼 다음 줄로 넘겨주는 역할을 합니다.
C++
#include <stdio.h>
int main(void){
printf("Hello World!");
return 0;
}
C++ 은 그래도 자바보단 보기 쉬운 느낌이 든다. C++도 해설해보자면
일단 C++은 C언어의 확장 버전이라 C와 비슷한 점이 많다.
C언어 안에 미리 만들어 제공하는 프로그램을 C 표준 라이브러리라고 한다.
#include는 전처리기(#으로 시작하며 사용자가 원하는 것을 컴파일러에게 직접 지시하는 문법이다)이고 포함한다라는 뜻을 가져서 <stdio.h>에서 선언된 내용을 포함합니다. 반드시 main() 함수를 만들기 전에 우선적으로 포함시켜야 한다.
<stdio.h>는 C 표준 라이브러리 중 하나로 stdio는 standard input output (표준 입출력 라이브러리)이고. h는 header file이다. stdio.h 안에 printf 가 들어있다고 생각하면 이해가 쉬울 것이다.
int는 반환 값의 데이터 타입을 나타내며 정수형으로 값을 반환한다. 그래서 return 문이 필요하다.
main은 위에서 설명했듯이 프로그램 시작을 알리는 함수이다.
void는 매개변수가 없다는 뜻이다.
printf는 출력을 뜻한다.
return 0; 은 메인 함수의 종료를 알리는 코드이다.
이렇게 중요한 언어 3가지로 헬로월드를 사용해보았는데 제일 힘든 것은 확실히 자바가 제일 힘들긴 했다. 이 글을 보며 기초를 차근차근 공부하는 사람들이 있으면 뿌듯할 것 같다.
'알고리즘' 카테고리의 다른 글
[백준] 2557- Hello world | C++ (0) | 2025.03.01 |
---|---|
C++ 알고리즘 공부 정리 ( 24. 3. 25 ) (0) | 2025.03.01 |
파이썬 반복문 정리 (2) | 2023.01.24 |
백준 알고리즘 입출력과 사칙연산 (파이썬) (0) | 2021.11.10 |
백준 알고리즘 시작! (0) | 2021.10.11 |