int *ms - объявление указателя на int, это может быть указателем на начало массива, но массив тогда нужно или создать или использовать уже имеющийся. int *ms; // объявим переменную-указатель int arr[123];// статически созданный массив ms=arr; // указатель показывает на начало массива ms=&arr[0]; // то же самое, просто более длинная запись ms=new int[321]; // создаем новый массив размером 321 элемент (вместо 321 может быть и значение переменной) ms[1]=ms[2]+3; // используем указатель также, как и статически созданный массив delete[ ] ms; // когда созданный массив больше не нужен - его нужно удалить Есть еще заменители массивов переменной длины (список, стек, очередь и т. п.), но это уже выходит за стандарт языка и требует подключения библиотеки (хоть и стандартной или широко распространенной)