• Complain

Martin Kalin - Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks

Here you can read online Martin Kalin - Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. publisher: Apress, genre: Home and family. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Martin Kalin Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks
  • Book:
    Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks
  • Author:
  • Publisher:
    Apress
  • Genre:
  • Rating:
    5 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Martin Kalin: author's other books


Who wrote Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks? Find out the surname, the name of the author of the book and a list of all author's works by series.

Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Contents
Landmarks
Book cover of Modern C Up and Running Martin Kalin Modern C Up and - photo 1
Book cover of Modern C Up and Running
Martin Kalin
Modern C Up and Running
A Programmer's Guide to Finding Fluency and Bypassing the Quirks
The Apress logo Martin Kalin Chicago IL USA ISBN 978-1-4842-8675-3 - photo 2

The Apress logo.

Martin Kalin
Chicago, IL, USA
ISBN 978-1-4842-8675-3 e-ISBN 978-1-4842-8676-0
https://doi.org/10.1007/978-1-4842-8676-0
Martin Kalin 2022
This work is subject to copyright. All rights are solely and exclusively licensed by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use.
The publisher, the authors, and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, expressed or implied, with respect to the material contained herein or for any errors or omissions that may have been made. The publisher remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This Apress imprint is published by the registered company APress Media, LLC, part of Springer Nature.

The registered company address is: 1 New York Plaza, New York, NY 10004, U.S.A.

To Janet, yet again.

Preface
1.Why C?

C is a small but extensible language, with software libraries (standard and third party) extending the core language. Among high-level languages, C still sets the mark for performance; hence, C is well suited for applications, especially ones such as database systems and web servers that must perform at a high level. The syntax for C is straightforward, but with an oddity here and there. Anyone who programs in a contemporary high-level language already knows much of C syntax, as other languages have borrowed widely from C.

C is also the dominant systems language: modern operating systems are written mostly in C, with assembly language accounting for the rest. Other programming languages routinely and transparently use standard library routines written in C. For example, when an application written in any other high-level language prints the Hello, world! greeting, it is a C library function that ultimately writes the message to the screen. The standard system libraries for input/output, networking, string processing, mathematics, security, cryptography, data encoding, and so on are likewise written mainly in C. To write a program in C is to write in the systems native language.

Whos the Intended Audience?
This book is for programmers and assumes experience in a general-purpose languagebut none in C. You should be able to work from the command line. Linux and macOS come with a C compiler, typically GNU C ( https://gcc.gnu.org ) and Clang ( https://clang.llvm.org ), respectively. At the command-line prompt (% is used here), the command
% gcc -v

should provide details. For Windows, Cygwin ( https://cygwin.com/install.html ) is recommended.

C has been a modern language from the start. The familiar function, which can take arguments and return a value, is the primary code module in C. C exhibits a separation of concerns by distinguishing between interfaces, which describe how functions are called, and implementations, which provide the operational details. As noted, C is naturally and easily extended through software libraries, whether standard or third party. As these libraries become better and richer, so does C. C programmers can create arbitrarily rich data types and data structures and package their own code modules as reusable libraries. C supports higher-order functions (functions that can take functions as arguments) without any special, fussy syntax. This book covers Cs modern features, but always with an eye on Cs close-to-the-metal features.

To understand C is to understand the underlying architecture of a modern computing machine, from an embedded device through a handheld up to a node in a server cluster. C sits atop assembly language, which is symbolic (human-understandable) machine language. Every assembly language is specific to a computer architecture. The assembly language for an Intel device differs from that of an ARM device. Even within an architectural family such as Intel, changes in the architecture are reflected in assembly language. As symbolic machine language, assembly language is approachable, although reading and writing assembly code can be daunting. Assembly language is of interest even to programmers in other languages because it reveals so much about the underlying system. C does not reveal quite as much, but far more than any other high-level language; C also reveals what is common across architectures. One sign of just how close C is to assembly language shows up in compilation: a C compiler can handle any mix of C and assembly source code, and C source is translated first into assembly code. From time to time, it will be useful to compare C source with the assembly source into which the C source translates.

C source code ports well: a C program that compiles on one platform should compile on another, unless platform-specific libraries and data structure sizes come into play. Perfect portability remains an ideal, even for C. C plays still another roleas the lingua franca among programming languages: any language that can talk to C can talk to any other language that does so. Most other languages support C calls in one form or another; a later code example shows how straightforwardly Python can consume library functions written in C.

2.From the Basics Through Advanced Features
This book is code centric, with full program examples and shorter code segments in the forefront throughout. The book begins, of course, with C basics: program structure, built-in data types and control structures, operators, pointers, aggregates such as arrays and structures, input and output, and so on. Here is an overview of some advanced topics:
  • Memory safety and efficiency: Best practices for using the stack, the heap, and static area of memory; techniques and tools for avoiding memory leakage

  • Higher-order functions: Simplifying code by passing functions as arguments to other functions

  • Generic functions: How to use the pointer-to-void ( void* ) data type in creating and calling generic functions

  • Functions with a variable number of arguments: How to write your own

  • Defining new data types: A convenient way to name programmer-defined, arbitrarily rich data types

  • Clarifying C code through assembly-language code: Getting closer to the metal

  • Embedding assembly code: Checking for overflow with embedded assembly

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks»

Look at similar books to Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks»

Discussion, reviews of the book Modern C Up and Running : A Programmers Guide to Finding Fluency and Bypassing the Quirks and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.