Colección de citas famosas - Slogan de motivación - Problemas de tipo de proyecto en C++

Problemas de tipo de proyecto en C++

En el menú Archivo, haga clic en Nuevo proyecto.

Aparece el cuadro de diálogo "Nuevo proyecto". Este cuadro de diálogo enumera los diferentes tipos de aplicaciones predeterminadas que Visual C# Express puede crear.

Seleccione "Aplicación de consola" como tipo de proyecto y cambie el nombre de la aplicación a "Lista de archivos".

La ubicación predeterminada debe ser apropiada, pero siempre puedes ingresar una nueva ruta si es necesario.

Haga clic en Aceptar.

Visual C# Express crea una nueva carpeta para su proyecto denominada con el título del proyecto, luego abre la ventana principal de Visual C# Express, incluido el panel Código, donde ingresará y editará los componentes que componen su aplicación. Código fuente C#.

Observa la barra de herramientas en la parte superior de la ventana. La barra de herramientas contiene iconos para crear, cargar y guardar proyectos, editar código fuente, crear aplicaciones y ocultar y mostrar otras ventanas que conforman el entorno de Visual C# Express. Los cinco íconos en el extremo derecho de la barra de herramientas se usan para abrir ventanas importantes, como el Explorador de soluciones y la Caja de herramientas. Coloque el puntero del mouse sobre cualquiera de estos íconos para obtener ayuda emergente con información sobre herramientas.

Nota

Los marcadores le permiten saltar rápidamente de una ubicación en el código fuente a otra, por lo que son útiles para escribir programas grandes. Para crear un marcador, haga clic en el icono Alternar marcador o presione Ctrl+B+T. Aparece un marcador cian en el margen. Utilice el mismo proceso para eliminar marcadores existentes. Puede crear tantos marcadores como desee y saltar entre ellos usando los íconos de marcadores Siguiente y Anterior o presionando Ctrl+B+N y Ctrl+B+P.

Asegúrese de que el Explorador de soluciones esté visible haciendo clic en la pestaña Explorador de soluciones en el extremo derecho de la pantalla o en el icono del Explorador de soluciones en la barra de herramientas.

El Explorador de soluciones es un panel muy útil porque muestra los distintos archivos que componen el proyecto. El archivo más importante del proyecto es el archivo "Program.cs", que contiene el código fuente de la aplicación.

Si desea mantener la visualización de Visual C# Express agradable y limpia, es importante saber cómo abrir y ocultar ventanas como el Explorador de soluciones. De forma predeterminada, el Explorador de soluciones está visible. Si desea ocultar el Explorador de soluciones, haga clic en el ícono Ocultar automáticamente (el ícono de chincheta) en su barra de título, o abra el menú Opciones en la barra de título del Explorador de soluciones y habilite Ocultar automáticamente". Otras ventanas, como Vista de clases y Propiedades, también tienen estos iconos.

Escriba el nombre de la clase "Consola" en el "Editor de código".

Si el Explorador de soluciones sigue bloqueando el panel Código, haga clic una vez en el panel Código para ocultar el Explorador de soluciones. Ahora haga clic a la derecha de la llave de apertura ({) dentro del método principal y presione Entrar para comenzar una nueva línea. Observe cómo el editor sangra automáticamente el cursor.

Nota

El Editor de código siempre intenta formatear su código en un diseño estándar y fácil de leer. Si su código comienza a verse desordenado, puede reformatear todo el documento haciendo clic en Avanzado, luego haciendo clic en Formato de documento en el menú Editar o presionando Ctrl+E+D.

Cuando escribe un nombre de clase de C# o una palabra clave, tiene la opción de escribir la palabra completa usted mismo o dejar que la herramienta IntelliSense (parte del panel Código) lo haga por usted. Por ejemplo, cuando escribe "c", aparece una lista emergente de palabras mientras IntelliSense intenta predecir la palabra que desea escribir. En este caso, no verá la palabra "Consola" que se acaba de mostrar, así que desplácese hacia abajo en la lista o continúe escribiendo la palabra "consola". Cuando "consola" esté resaltada en la lista, presione Entrar o Tabulador, o haga doble clic en él, y la Consola se agregará al código.

La ventaja de utilizar IntelliSense es que puede garantizar la corrección de las mayúsculas y la ortografía.

Depende de usted si escribe su código o deja que IntelliSense lo haga por usted.

Escriba un punto y el nombre del método WriteLine.

Cuando escribe un punto después de Consola, aparecerá inmediatamente otra lista de IntelliSense. Esta lista contiene todos los métodos y propiedades posibles que pertenecen a la clase Consola. Necesita el método WriteLine y debería poder verlo al final de la lista. Para completarlo por sí solo, escriba WriteLine o presione la tecla de flecha hacia abajo para seleccionarlo, luego presione Entrar o Tabulador o haga doble clic en él. WriteLine se agregará al código.

Escriba el corchete de apertura. Inmediatamente verá otra característica de IntelliSense: firmas de métodos, que se muestran como mensajes de información sobre herramientas. En este ejemplo, puede ver 19 firmas diferentes y explorarlas haciendo clic en las teclas de flecha hacia arriba y hacia abajo.

Escriba la cadena "Este programa enumera todos los archivos en un directorio".

Escriba el mensaje entre comillas y agregue un paréntesis de cierre. Verá aparecer un subrayado ondulado rojo para recordarle que faltan algunos símbolos. Escriba un "punto y coma" (;) y el subrayado desaparecerá.

Completa el procedimiento.

Escriba o copie y pegue el siguiente código para completar el programa:

C#

Copiar código

static void Main(string[ ] args ) { Console.WriteLine("Este programa enumera todos los archivos en el directorio:"); System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(@"C:\"); Archivo FileInfo en dir.GetFiles("*.*")) { Console.WriteLine("{0}, {1}", file.Name, file.Length } Console.ReadLine();

La última línea del programa es Console.ReadLine();, lo que hace que el programa se detenga antes de presionar Enter. Si omite esta línea, la ventana de la línea de comando desaparecerá inmediatamente y no verá el resultado del programa. Si está creando una utilidad de línea de comandos que siempre se usa desde una consola de línea de comandos, es posible que desee omitir la llamada al método ReadLine().

Ejecutar el programa.

Su primer programa ahora está completo y listo para compilar y ejecutar. Para hacer esto, presione F5 o haga clic en el ícono Inicio en la barra de herramientas.

Después de que el programa se compila y ejecuta, se abre la ventana de la Consola y muestra una lista de archivos y sus tamaños. Presione Enter para salir del programa.

Si es nuevo en la programación de C#, es una buena idea leer la sección Introducción al lenguaje C# (Visual C# Express Edition) y experimentar con algunos de los ejemplos del lenguaje. Si desea obtener más información sobre el entorno de desarrollo de Visual C# Express y cómo crear una aplicación de Windows, continúe con la siguiente sección Cómo: crear una aplicación de C# para Windows.

Como puede ver en la declaración específica a continuación, después de determinar el nombre del archivo que se buscará y el nombre del directorio que se buscará, se llamará a la función Search_Directory para buscar el archivo. Primero, busque cada entidad (archivo o subdirectorio) en el directorio actual en secuencia. Si es un subdirectorio, ingrese el subdirectorio y llame recursivamente a la función Search_Directory para buscar. Una vez completada la búsqueda, regrese al directorio superior. no es un subdirectorio sino un archivo determinado, luego determine si es el archivo que estamos buscando y, de ser así, genere su ruta completa. De esta manera, mediante llamadas recursivas repetidas a la función Search_Directory, se puede recorrer y buscar en todo el directorio, incluidos los subdirectorios.

A continuación se dará un ejemplo de cómo programar en VC++ para buscar archivos en todo el árbol de directorios.

1. En Visual C++ 6.0 (VC++ 5.0 es similar), se crea de forma predeterminada una aplicación de búsqueda basada en cuadros de diálogo. Coloque un botón de comando en el cuadro de diálogo de la ventana principal con el título "Buscar archivo" y el ID ID-BUTTON-SEARCH. Al hacer clic en este botón se completará la búsqueda del archivo.

2. Utilice ClassWizard para agregar la función de controlador OnButtonSearch al evento BN_CLICKED del botón "Buscar archivo". El código es el siguiente:

#include 〈direct.h〉

#include 〈. io.h〉

......

void CSearchDlg::OnButtonSearch()

{

// TODO: Agregue aquí el código del controlador de notificaciones de control

char szFilename[80];

// La cadena szFilename representa el nombre del archivo que se encontrará

strcpy(szFilename, 〃Mytext.txt〃);

_chdir(〃d:\\〃); // Ingrese la ruta a buscar (también puede ser un directorio específico)

// Busque el archivo y muéstrelo si lo encuentra. El nombre de ruta completo del archivo

Search_Directory(szFilename

// Es una función miembro de la clase CSearchDlg

MessageBox(〃¡Búsqueda de archivos completada!〃);

// Muestra la información buscada

}

3. Agregue la función miembro Search_Directory a la clase CSearchDlg, que completará el trabajo de búsqueda de archivos específico. El código es el siguiente:

void CSearchDlg::Search_Directory(char* szFilename)

{.

mango largo;

struct _finddata_t filestruct;

//Representa información del archivo (o directorio)

char path_search[_MAX_PATH];

//Representa el resultado de la ruta encontrada

//Inicia la búsqueda y encuentra la primera entidad (archivo o subdirectorio) en el directorio actual,

// 〃*〃 significa buscar cualquier archivo o subdirectorio, filestruct es el resultado de la búsqueda

handle = _findfirst(〃*〃, &filestruct

// Si el identificador es -1, significa que si el directorio actual está vacío, finalice la búsqueda y regrese

if((handle == -1)) return

// Compruebe si la primera entidad encontrada es una; directorio ( filestruct.name es su nombre)

if( ::GetFileAttributes(filestruct.name) & FILE―ATTRIBUTE―DIRECTORY )

{

// Si es un directorio, ingrese el directorio y llame recursivamente a la función Search_Directory para buscar,

// Nota: si el primer carácter del nombre del directorio es ′.′ (es decir, 〃.〃 o 〃 ..〃), no es necesario Buscar

if( filestruct.name[0] != ′.′ )

{

―chdir(filestruct .name);

Search_Directory(szFilename);

// Una vez completada la búsqueda, regresa al directorio anterior

―chdir(〃..〃

}

}

else // Si la primera entidad no es un directorio, verifique si es el archivo que se va a encontrar

{

// stringmp empareja ambas cadenas se comparan en minúsculas y se devuelve 0 para indicar una coherencia completa

if( !stricmp(filestruct.name, szFilename) )

{

// Primero obtenga la ruta completa del directorio de trabajo actual

―getcwd(path_search,―MAX―PATH

// Luego obtenga la ruta completa del archivo); (incluido el nombre del archivo)

strcat(path_search,〃\\〃

strcat(path―search,filestruct.name

); MessageBox(path_search); // Visualización de salida

}

}

// Continúe la misma búsqueda anterior para el siguiente subdirectorio o archivo en el directorio actual.

while(!(―findnext(handle,&filestruct)))

{

if( ::GetFileAttributes(filestruct.name) & FILE―ATTRIBUTE― DIRECTORIO )

{

if(*filestruct.name != ′.′)

{

―chdir(filestruct.name

Search_Directory(szFilename);

―chdir(〃..〃);

else

{

if(!stricmp(filestruct.name,szFilename))

{

―getcwd(ruta ―buscar,―MAX―PATH );

strcat(ruta_búsqueda,〃\\〃);

strcat(ruta_búsqueda,filestruct.name); (ruta_búsqueda);

}

}

}

―findclose(handle); Finalmente finalice todo el trabajo de búsqueda

p>