How to trim a string in C

Trim a string

The problem of removing leading and trailing whitespace characters in strings occurs in programming quite often. Here is a solution.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

void trim (char *dest, char *src); 

int main (int argc, char **argv)
{
    char inbuf [1024];
    char outbuf [1024];

    printf ("Type a string : ");
    while (fgets (inbuf, 1024, stdin) !=
Read more

MCE hardware error cpu 0

1.0 Error

Error

While running Ubuntu 18.04.1 on a laptop, the following errors were observed.

mce: hardware error cpu 0 machine check 0 bank 6 ae0000000040110a
mce: hardware error tsc 0 addr ffb07540 misc 238a0000086
mce: hardware error processor 0:40651 time 1540082330 socket 0 Apic 0 microcode 24
ipmi dmi invalid offset 0

The system would stop in the single user mode.… Read more

Socket Programming using UDP in C


1.0 Datagram sockets

There are two major types of network sockets, viz. Stream sockets (SOCK_STREAM) and Datagram sockets (SOCK_DGRAM). The socket type defines the semantics of communication between this socket and its remote counterpart. Stream sockets provide full-duplex reliable sequenced data streams.… Read more

Socket Programming using TCP in C


1.0 Client-server model

Client - Server System

Client server model is a software architecture paradigm prevalent in distributed applications. A server has information resources and processes that provide answers to queries and other services to remote clients over the network. Some of the examples of these services are booking an airline ticket and/or a room in a hotel, sending a file to a client, sending a mail message to another person (client), etc.… Read more

Signals in Linux


1.0 Signals

A signal is a notification delivered to a process by the kernel. A signal indicates that an event has occurred and the process must take note of it. Signals are mostly delivered asynchronously to a process. Whatever the process was doing is suspended and the processing of the signal takes place immediately.… Read more