Poised Solutions

C Developer

poised solutions
IT consultancy and software house
Library Poised Solutions

C Developer

C Developer

C is a high performance language used to create operating systems, applications, programming language, kernels, and device drivers. The C language is probably ultimately responsible for most of the programs on the planet. The Unix operating system was written in and for C programming language, and C is a cross platform programming language.

C was invented by Denis Ritchie at Bell Labs in 1972. C has evolved overtime and currently we are at the C99 version. Many compilers have been written to compile C code, currently the GCC (GNU Compiler Collection) by Richard Stallman is perhaps the best known.


C Benefits

The main advantage of C is the benefit gained from running performance of a program. The time of development tends to be longer than higher level programs such as Python or Erlang though the resulting native code after compilation can outstrip higher level languages in run time performance. C comes with a number of standard libraries that does increase the speed of development, and these libraries have been battle tested, often also forming the foundation of other languages and their libraries as well. C should be thought of as high level assembly and there are significant time savings in development over coding in assembly coupled with cross platform advantages.

C is a great language to development device drivers and kernels in, as C keeps fairly close to the actual hardware of a computer system, and offers the performance needed for code that runs all the time when accessing the hardware. For this reason C is an excellent System Development programming language.


C Uses

C is a general programming language, though the skill required to write secure and stable C code is quite high as the programmer is working at a low level with direct memory management. So, C is generally reserved for system development and to optimise bottlenecks in applications normally by the use of libraries.

C is very good at number crunching this is because the application can be stripped down to the minimal required for the problem space. C is also often used as an engine to do the heavy lifting and then pass the business logic to another language such as Lua, Perl or Python.

Where performance is critical and code meets hardware C is a good language to use. Most Unix and Linux Kernels are developed in C, and correspondingly Unix and Linux device drivers are developed in C.

C is also used to create other programming languages and virtual machines, this is primarily because C is low level enough to allow for optimum performance of environments. C is central to so many programming endeavours even if the programmer at the time never uses C directly; C compiled code is often still present.


C Example Code

//----------------------------------------------------------
//
//  __   __
// / _|_/ _|
// \__(_)__|
//
//
//----------------------------------------------------------
// File      : c.c
// Author    : Richard Lewis
// Project   : /mnt/webbeastie/proj/poisedsolutions/lib/code/
// Syntax    : c
// Date      : Tue 14 Jul 2009
// Copyright : Richard Lewis 2009
//----------------------------------------------------------
// c.c - Example C Code
//----------------------------------------------------------

#include <stdio.h>
//----------------------------------------------------------

void display_arguments( int, char** );
void display_int_memory_address( int );
//----------------------------------------------------------

int main( int argc, char **argv ) {
    // C Example Code

    int x = 10;

    display_arguments( argc, argv );

    display_int_memory_address( x );

    return 0;
}
//----------------------------------------------------------

void display_arguments( int argc, char **argv ) {
    // Display Command Line Arguments

    printf( "Program Name : %s\n", argv[ 0 ] );
    printf( "\n" );


    int k;
    for ( k = 1; k < argc; ++k ) {
        
        printf( "%d : %s\n", k, argv[k] );
    }
    printf( "\n" );
}
//----------------------------------------------------------

void display_int_memory_address( int integer ) {
    // Display Integer Memory Address

    printf("Integer Value   :   %d\n",          integer );
    printf("Integer Address : 0x%X\n", ( int ) &integer );
    printf("\n");
}
//----------------------------------------------------------

// gcc c.c -o c -Wall
//----------------------------------------------------------

C Development Services Poised Solutions

DevelopmentLua Developer
DevelopmentLua Developer
Daemon DevelopmentApplication DevelopmentSystem Development
Daemon DevelopmentApplication DevelopmentSystem Development
EncryptionSystem HardeningPenetration TestingEcommerce Development
EncryptionSystem HardeningPenetration TestingEcommerce Development

C Resources

C Resources
C Books


































Poised Solutions C Developer for Hire. If you have a C project then Poised Solutions has the development skills to make that project into a reality. Contact Poised Solutions to discuss your IT Project today.

Poised Solutions Web Design and Web Development by Poised Solutions