c++ 처음배우는데 모르는부분 알려주실분 있나요?

#include <iostream>
using namespace std;


	double area(int r);

	double area(int r) {
		return 3.14 * r * r;
	}

	int main() {
		int n = 3;
		char c = '#';
		cout << c << 5.5 << '-' << n << "hello" << true << "\n";
		cout << "n+5= " << n + 5 << '\n';
		cout << "면적은" << area(n);

	}
```c++을 처음하는데 double area(int r){ return~} 이부분 이랑  true 부분이 잘이해가 안가서 검색을좀
해봤는데 반환형 함수이름(매개변수1, 매개변수2) {함수 실행문?} 이런식으로 함수 선언을 하는것
같은데 첫줄 double (int r) 선언을 해주고 그다음에 바로 실행문을써도 될거같은데 굳이 저렇게
두번쨰줄에 다시 double (int r)을 또쓰고 밑에 실행문을 쓰는 이유가 따로있나요? visual studio에서는 위에줄 뺴고 작성해도 결과는 똑같더라구요. 그리고 true 부분은 c언어에서 true를 1 false를 0으로
정의 했다고 보긴했는데 저기도 1대신 true를 쓴 이유가 따로있나 아니면 그냥 true를 쓴것인지 궁금합니다.

코드가 길어지거나 하면 해당 코드에 어떤 함수가 있는지 알기 어려워서 코드의 시작 지점에 이 코드에는 이런 함수가 정의되어 있습니다~ 하고 알려주는 경우가 있습니다.
1/0을 써도 true/false를 써도 되는데 1, 0을 표현하려고 하는지, true/false를 표현하려고 하는지 알기 쉬우려면 true를 쓰는 편이 좋습니다.

알려주셔서 감사합니다 덕분에 이해됬습니다.