정수 하나를 받습니다. 그리고 받은 정수만큼의 개수를 그 다음 줄에 입력을 해서 그 개수만큼의 변수를 초기화해야합니다.
예를 들어 4를 받았으면, 4개의 숫자를 받아서 각각의 변수에 할당해야합니다. 배열을 이용하면 될 것 같은데 scanf함수로는 %d를 몇개 입력해야하는지 모르니까 안될 거라고 생각이 드는데.. 어떻게 해야할까요?
다시 예를 한번 더 들면
4를 받았으면
4
1 5 6 7
이런 식으로 입력을 할 수 있게 만들고 싶다는 겁니다.
정수 하나를 받습니다. 그리고 받은 정수만큼의 개수를 그 다음 줄에 입력을 해서 그 개수만큼의 변수를 초기화해야합니다.
예를 들어 4를 받았으면, 4개의 숫자를 받아서 각각의 변수에 할당해야합니다. 배열을 이용하면 될 것 같은데 scanf함수로는 %d를 몇개 입력해야하는지 모르니까 안될 거라고 생각이 드는데.. 어떻게 해야할까요?
다시 예를 한번 더 들면
4를 받았으면
4
1 5 6 7
이런 식으로 입력을 할 수 있게 만들고 싶다는 겁니다.
for문 돌려서 배열로 저장하세여~
Api를 사용해야합니다. Native Api중에 RtlVirtalMemoryAlloc이라는 함수를 사용해보세요. ㅋ
그러면 엔터 쳐야되잖아요. 엔터 안치고 스페이스로만 입력하고 싶어요
cin << c++이시면 이런거 한방에 해결해줘여
댓글들 가관이네- From DC 도우미+
헐 그래서 C++을배우라는 거군요. C로는 어떻게 안될까요
c도 있었던거같은데 기억이잘
c++이 편하긴 한데 구지 c를 원하면
#include <stdio.h>#include <stdlib.h>int main(){ int a, *b; scanf("%d", &a); b = (int*)malloc(a); printf("%d\n", a); for(int i=0;i<a;i++) { scanf("%d", &b[i]); printf("%d\n", b[i]); }}
malloc이 메모리 동적으로 할당해주는거다
아 시발 내가 c를 안써서 헷갈리네 b = (int*)malloc(a * sizeof(int)); 이렇게 해야된단다
마지막에 free(b)도 해줘라. 동적할당한 메모리 해제해주는거다 이거 안하면 나중에 프로그램 커지면 메모리누수 존나남
받은만큼 배열을 선언하면 되지. 선언은 일하는 중에도 할 수 있어.
이웃집힘법사 되도않는 헛소리 지껄이면서 허세부릴거면 걍 자살해라 제발
그냥 배열 설정하면 되요
전에 언놈이 윈도우즈 프로그래밍 배우고 싶댔더니 c -> winapi -> 리버싱 -> c++ -> mfc 이딴 병신같은 순서 추천해준것도 힘법사 아니냐? ㅋㅋ