개발 이야기
c++14는 다음과 같이 가변배열이 되는 것인가?!
SagacityJang
2020. 1. 15. 01:04
백준에서
내가 만든 코드와 비교하고 있는 와중에 아래와 같이 cin>>n; 후에 int a[n]={};이 된다는 것을 봤다.! 심지어 for문을 보면 a[i] =t;가 적혀져있다..
#include <iostream>
using namespace std;
int main()
{
int n;
cin>>n;
int a[n]={};
int m=0;
int t=0;
for(int i=0; i<n; i++)
{
cin>>t;
if (t > m)
{
m=t;
}
a[i]=t;
}
float s=0;
for(int i=0; i<n; i++)
{
//cout<<s<<endl;
s=s+(float)a[i]/(float)m*100;
//cout<<s<<endl;
}
cout<<s/(float)n;
return 0;
}
처음에 내 눈을 의심했다. 안되는걸로 알고 있는데 맞았습니다!!로 뜬다는것에.. 이런 방식도 지원을 하는건가?
VS말고 다른 ide에서는 가변크기배열 된다고들었다는 사람도 있고 c++ 최신 문법일수도 있다고 한다.
문제의 소스코드 링크
https://www.acmicpc.net/source/16987090
로그인
www.acmicpc.net
이것저것 찾다보니 답을 스택오버플로우에서 찾았다.
https://stackoverflow.com/questions/40633344/variable-length-arrays-in-c14