:para ver el tamaño de un array segun los elementos que hayas introducido es:
la libreria creo es
#include <conio.h>
#include <string.h>
#include <ctype.h>
int x;
x = strlen(cadena);
strlen lee la longitud de la cadena.
o si no quieres usar strlen puedes usar el siguiente codigo en C++:
#include <iostream.h>
#include <ctype.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
class digitos
{
 public:
   digitos(int *,int,char *);
   void setdatos();
   void imprime();
   void getdatos();
 private:
    int x[50], res;
    char z[50];
};
//constructor
  void digitos::digitos(int xx[50],int respuesta,char zz[50])
  {
   int y;
   for (y=0; y<50; y++)
   {
    x[y] = xx[y];
   }
    strcpy(z,zz);
    res = respuesta;
  }
   void digitos::setdatos()
   {
    int y;
    clrscr();
    cout<<"***LONGITUD DE LA CADENA***"<<endl;
leo cadena de caracteres
    cout<<"introduce un numero: "<<endl;
    cin>>z;
    for (y=0; y<=z[y]; y++)
    {
     if (z[y] < 48 || z[y] > 57 )
     {
      cout<<"error";
      getch();
      abort();
     }
    }
   }
    void digitos::getdatos()
    {
     int y;
     for (y=0; y<=z[y]; y++)
     {
    // convierto cadena de caracter a enteros
      x[y] = int(z[y]) - 48;
 y hago la suma mediante bucle for
      res += 1;
     }
    }
       void digitos::imprime()
       {
   cout<<"el resultado es: "<<res;
       }
   main()
   {
    char op;
    do {
//inicializo variables privadas
    digitos ob(0,0,"1/0");
    clrscr();
    textbackground(BLACK);
    textcolor(BROWN);
    ob.setdatos();
    ob.getdatos();
    ob.imprime();
    op = toupper(getch());
    } while (op != 27);
//bucle while termina hasta que sea
igual a SALIR=ESC
    return 0;
   }