A esto me refiero y se puede mejorar ya que no me gustan mucho esos breaks pero no tengo tiempo para mejorarlo. Te lo dejo a ti:
  Código PHP:
    #include <stdio.h>
#include <string.h>
int pos(char* cadena, char* subcadena);
int main(int argc, char* argv[])
{
   int posicion = pos("hola mundo", "mundo");
   return 0;
}
//---------------------------------------------------------------------------
int pos(char* cadena, char* subcadena)
{
   int salida=0, largoCadena, largoSubcadena, contadorCadena=0, contadorSubcadena;
   largoCadena = strlen(cadena);
   largoSubcadena = strlen(subcadena);
   do{
      contadorSubcadena = 0;
      do{
         if(((contadorCadena + contadorSubcadena) < largoCadena) &&
           (cadena[contadorCadena + contadorSubcadena] == subcadena[contadorSubcadena]))
            contadorSubcadena++;
         else
            break;
      }while((contadorCadena + contadorSubcadena) < largoCadena);
      if(contadorSubcadena == largoSubcadena)
      {
         salida = contadorCadena;
         break;
      }
      contadorCadena++;
   }while(contadorCadena < largoCadena);
   return salida;
}