User Tools

Site Tools


programming:c

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
programming:c [2021/04/07 01:22]
nanodano
programming:c [2021/04/15 20:23] (current)
nanodano
Line 3: Line 3:
 ===== General topics ===== ===== General topics =====
  
-C standards - Original C (1983). C90 (1990), C99 (1999), C11 (2011) +==== Editors ==== 
-comments (/* */ and // only in C99) + 
-header files - creating your own, header-only programs. C Stdlib headers and how to find them (/include, /usr/include, /usr/local/include/), ifndef/define, (stdbool.h and bool type in C99) +==== Compilers ==== 
-creating libraries + 
-compilinglinking, ldd, strace, static vs dynamic, linking against built libs with header files, assembly built, C++ built, `extern C` +==== Linkers ==== 
-debugging + 
-Make and Rake +==== C standards 
-Packaging an app (Source, Debian package) (See: packaging applications) + 
-inline assembly+- Original C (1983). C90 (1990), C99 (1999), C11 (2011) 
 + 
 +==== comments ==== 
 + 
 + (/* */ and \/\/ only in C99) 
 + 
 +==== header files ==== 
 + 
 + - creating your own, header-only programs. C Stdlib headers and how to find them (/include, /usr/include, /usr/local/include/), ifndef/define, (stdbool.h and bool type in C99) 
 + 
 +==== creating libraries ==== 
 + 
 +==== compiling linking ==== 
 + 
 +, ldd, strace, static vs dynamic, linking against built libs with header files, assembly built, C++ built, `extern C` 
 +specifying include dirs and library dirs 
 + 
 +==== debugging ==== 
 + 
 +==== Make and Rake ==== 
 + 
 +==== Packaging an app ==== 
 + 
 +(Source, Debian package) (See: packaging applications) 
 + 
  
 ===== Code examples/cookbook ===== ===== Code examples/cookbook =====
  
 +to do
  
 ==== hello world ==== ==== hello world ====
  
-.+to do
  
 ==== math operations ==== ==== math operations ====
  
-(**%)+exponentsmodulus
  
 ==== control logic ==== ==== control logic ====
Line 51: Line 77:
  
 ==== bitwise and binary ==== ==== bitwise and binary ====
 +
 +==== inline assembly ====
  
 ==== random numbers ==== ==== random numbers ====
  
 ==== working with time, sleep, dates ==== ==== working with time, sleep, dates ====
 +
 +<code c sleep.c>
 +#include <unistd.h>
 +
 +int main(int argc, char **argv) {
 +    sleep(2);
 +    return(0);
 +}
 +</code>
  
 ==== malloc and free ==== ==== malloc and free ====
Line 81: Line 118:
  
 ==== using SQLite ==== ==== using SQLite ====
 +
 +==== Get exif info ====
 +
 +https://libexif.github.io
  
 ==== Embedding Python ==== ==== Embedding Python ====
Line 145: Line 186:
 ===== More examples ===== ===== More examples =====
  
-cpp-template.cpp +  * cpp-template.cpp 
-_computer-terminal +  _computer-terminal 
-_decryption +  _decryption 
-_racing-chars +  _racing-chars 
-_roman-and-arabic +  _roman-and-arabic 
-age-distribution +  age-distribution 
-armstrong-numbers +  armstrong-numbers 
-array-absurdity +  array-absurdity 
-beautiful-strings +  beautiful-strings 
-bit-positions +  bit-positions 
-calculate-distance +  calculate-distance 
-capitalize-words +  capitalize-words 
-compressed-sequence +  compressed-sequence 
-ctemplate.c +  ctemplate.c 
-data-recovery +  data-recovery 
-decimal-to-binary +  decimal-to-binary 
-delta-time +  delta-time 
-email-validation +  email-validation 
-even-numbers +  even-numbers 
-fibonacci-series +  fibonacci-series 
-file-size +  file-size 
-find-a-writer +  find-a-writer 
-first-non-repeated-character +  first-non-repeated-character 
-fizz-buzz +  fizz-buzz 
-game-of-life +  game-of-life 
-go-template.go +  go-template.go 
-happy-numbers +  happy-numbers 
-hex-to-decimal +  hex-to-decimal 
-hidden-digits +  hidden-digits 
-java-template.java +  java-template.java 
-json-menu-ids +  json-menu-ids 
-juggling-with-zeros +  juggling-with-zeros 
-lettercase-percentage-ratio +  lettercase-percentage-ratio 
-longest-lines +  longest-lines 
-longest-word +  longest-word 
-lower-case +  lower-case 
-lowest-unique-number +  lowest-unique-number 
-mixed-content +  mixed-content 
-morse-code +  morse-code 
-mth-to-last-element +  mth-to-last-element 
-multiples-of-a-number +  multiples-of-a-number 
-multiplication-tables +  multiplication-tables 
-multiply-lists +  multiply-lists 
-n-mod-m +  n-mod-m 
-nice-angles +  nice-angles 
-number-of-ones +  number-of-ones 
-odd-numbers +  odd-numbers 
-penultimate-word +  penultimate-word 
-php-template.php +  php-template.php 
-prime-numbers +  prime-numbers 
-prime-palindrome +  prime-palindrome 
-py-template.py +  py-template.py 
-query-board +  query-board 
-README.md +  README.md 
-remove-characters +  remove-characters 
-reverse-and-add +  reverse-and-add 
-reverse-words +  reverse-words 
-rightmost-char +  rightmost-char 
-roadtrip +  roadtrip 
-roller-coaster +  roller-coaster 
-roman-numerals +  roman-numerals 
-ruby-template.rb +  ruby-template.rb 
-self-describing-numbers +  self-describing-numbers 
-set-intersection +  set-intersection 
-shortest-repetition +  shortest-repetition 
-simple-sorting +  simple-sorting 
-solution_finder.rb +  solution_finder.rb 
-split-the-number +  split-the-number 
-stack-implementation +  stack-implementation 
-string-substituion +  string-substituion 
-sum-ints-from-file +  sum-ints-from-file 
-sum-of-digits +  sum-of-digits 
-sum-of-integers +  sum-of-integers 
-sum-of-primes +  sum-of-primes 
-swap-case +  swap-case 
-swap-elements +  swap-elements 
-the-major-element +  the-major-element 
-trailing-string +  trailing-string 
-unique-elements +  unique-elements 
-word-to-digit+  word-to-digit
  
programming/c.1617758520.txt.gz · Last modified: 2021/04/07 01:22 by nanodano