Algo muy poco atractivo para muchos programadores que llegan a C/C++ luego de hacer experiencia en otros lenguajes es la asignación de memoria dinámica (punteros, mallocs y reallocs).

Repasemos un poco de teoría y luego veamos un ejemplo sencillo e indoloro :P

(más…)

Luego de leer el artículo C/C++: Indicador de progreso de La plaga Tux, me vino a la mente ese indicador de progreso que tiene ese aspecto de “barrita” girando sobre su propio eje.

Entonces, tiempo libre mediante, en principio tomé el artículo original y porté el código de C++ a C (nada de otro mundo). Tal artículo me hizo recordar que hay vida más allá del \n recordándome el \r. Pero como una cosa va encadenada a la otra, también me hizo recordar el \b.

Para quienes hasta aquí me leen perdidos o necesitan un refresco de su memoria, les recuerdo que en el formato de impresión se pueden utilizar varias secuencias de control de cursor:

  • \n: nueva línea
  • \r: retorno de carro
  • \b: backspace
  • \t: tab
  • etc.

Con esto, ya tenemos todos los fundamentos para que puedas entender los ejemplos.

(más…)

  • 3 Comentarios
  • Comentarios: C, Programación
  • En la semana una noticia ocupó a la mayoría de los blogs: Go, un nuevo lenguaje de programación. La noticia hubiera pasado desapercibida de no ser porque Go es un nuevo lanzamiento de Google!

    logo-153x55

    Go se promociona a si mismos como un lenguaje:

    • rápido: el código compilado en Go corre tan rápido como el código compilado en C o C++.
    • seguro: garantiza seguridad en el manejo de memoria, tiene punteros pero no utiliza la aritmética de punteros que convierten en engorrosa la programación y dan lugar a memory leaks, memory slices y ese otro tipo de males.
    • concurrente: promueve la escritura de procesos ligeros, comunicados entre si y ejecutar miles de rutinas diciendo adios a los desbordamientos de pila
    • divertido: sintaxis clara, garbage collector, métodos de cualquier tipo, etc. Go luce como un lenguaje dinámico (Phyton) pero tiene la velocidad y seguridad de un lenguaje estático (C, C++).
    • código abierto: distribuido bajo licencia BSD

    (más…)

    En pocos pasos, veremos como compilar un programa escrito en C++ sobre Linux:

    screenpp

    (más…)

    Para aquellos anticuados como yo que en C, desde que descubrimos la varargs.h no podemos dejar de mandar un número de argumentos variables, hoy veremos que con Java también es posible.

    (más…)

  • 2 Comentarios
  • Comentarios: C, Programación
  • Para quienes dan sus primeros pasos en C, pero que vienen de otros lenguajes de más alto nivel, se encontrarán con el faltante de varias funciones disponibles en otros lenguajes (ya sea como funciones o como métodos de algunas clases).

    A continuación, pongo a vuestra disposición el código de algunas funciones que pueden resultar de utilidad: las clásicas funciones rtrim, ltrim y trim (para eliminar espacios a la derecha, izquierda y de ambos lados de una cadena) y de la función isNumeric para comprobar si un valor ingresado es numérico o no.

    Además, para agregar un poco de valor agregado a la publicación convertiremos a estas funciones en una librería dinámica.

    (más…)

  • 2 Comentarios
  • Comentarios: C, Programación
  • Los algoritmos recursivos no son un recurso tan utilizado por los programadores, inclusive, también se plantean discusiones acerca de algoritmos iterativos vs. recursivos.

    Independientemente de la preferencia de cada uno de los programadores, la idea de esta publicación es mostrar con un ejemplo sencillo una misma función “potencia” escrita de ambas formas.

    (más…)

  • 9 Comentarios
  • Comentarios: C, Programación
  • Eclipse es un IDE conocido para el desarrollo de aplicaciones Java. Sin embargo, es un IDE mucho más flexible de lo imaginado, pues gracias a una infinidad de plugins permite, entra otras cosas, editar clases visuales de Java, programar aplicaciones J2EE, C/C++ y en varios lenguajes más, conectarse a bases de datos y escribir consultas SQL, etc.

    Para esta ocación, veremos que debemos hacer para programar en C o C++. Si bien, puedes descargarte una versión preparada para desarrolladores C/C++ , en nuestro caso arrancaremos de un eclipse instalado y utilizado (antes de esta publicación) únicamente para el desarrollo en Java.

    (más…)

  • 4 Comentarios
  • Comentarios: C, Programación
  • Struct, Union y Enum en C

    A continuación, del Curso de Programación en C de Programar es fácil (o no) veremos un breve resumen de algunas estructuras de datos:

    • Estructuras
    • Uniones
    • Enumeraciones

    (más…)

  • 2 Comentarios
  • Comentarios: C, Programación
  • Función split en C

    En las librerías estándares de C no disponemos de una función split al estilo de la de Java o PHP. Lo más parecido que podemos encontrar es la función strtok en la <string.h>, aunque es un poco más complicada y problemática.

    A tal motivo, una alternativa es crear nuestra propia función split.
    Vía 4 bits blog pongo a disposición una implementación de la función:

    (más…)

  • 4 Comentarios
  • Comentarios: C, Programación

  • Búsqueda personalizada


    Categorías

    Licencia de uso

    Usuarios

         web counter