#include <stdio.h>
#include <stdlib.h>

int main() {
 int i;
 int *a = (int*)malloc(sizeof(int));
 float *b = (float*)malloc(sizeof(float));
 double *c = (double*)malloc(sizeof(double));
 char *d = (char*)malloc(sizeof(char)*10);

 for (i = 0; i < 2; i++) {
  printf(" a[%d] 값 입력 : ", i);
  scanf_s("%d", &a[i]);
  printf(" 입력된 a[%d]의 값 : %d\n", i, a[i]);
 }

 for (i = 0; i < 2; i++) {
  printf(" b[%d] 값 입력 : ", i);
  scanf_s("%f", &b[i]);
  printf(" 입력된 b[%d]의 값 : %f\n", i, b[i]);
 }

 for (i = 0; i < 2; i++) {
  printf(" c[%d] 값 입력 : ", i);
  scanf_s("%lf", &c[i]);
  printf(" 입력된 c[%d]의 값 : %lf\n", i, c[i]);
 }

 printf(" 문자열 d 입력 : ");
 scanf_s("%s", d, sizeof(d));
 printf(" 입력된 d의 값 : %s\n", d);

 return 0;
}



이게 문자열을 입력을 못받아요...

hel 까지만 적으면 출력되는데, 그 이상 넘어가면 빈 공간을 출력해요.

어디가 잘못된건가요?

환경은 visual stdio 2015에요..