Video: C++ Tutorial for Beginners - Full Course 2024
Genom Dan Gookin
Det bästa sättet att lära sig programmering är att börja med ett grundläggande språk som C. Nästan alla andra populära språk lånas idag från C. Oavsett om du är nyfiken på programmering, behöver du att skicka en högskolekurs, eller vill starta din egen appaffär, är lärande C rätt ställe att börja.
Förstå C Language Skeleton
Mest kodning börjar med en C-språkstruktur. Detta skelett innehåller de grundläggande benen som de flesta program skrivs på. Använd detta enkla skelett för att komma igång:
#include int main () {return (0);}
Traditionellt börjar programmet med förbehandlingsdirektiv plus prototyper. #include-uttalandena tar in headerfiler, t.ex. stdio. h, standardinmatning / utdatahuvudfilen.
Den primära funktionen i alla C-koder är huvud (), vilken är den första funktionen som körs när programmet startar. Huvudfunktionen () är en int-funktion, så den måste returnera ett heltal värde. Alla funktionsansökningar är bifogade i krullningsfästen eller fästen.
C Språk Nyckelord
C-nyckelorden representerar kärnan i språket. Med C11-översynen till språket har flera nya nyckelord lagts till. De visas med ledande underskrifter i följande tabell:
_Alignas | break | float | undertecknad |
_Alignof | fall | för | sizeof |
_Atomic > char | goto | statisk | _Bool |
const | om | struct | _Complex |
fortsätta | inline | i läget | _Generic |
default | int | typedef | _Imaginary |
göra | lång | Union | _Noreturn |
dubbel | registrera | osignerad | _Static_assert |
annan > begränsa | tomrum | _Thread_local | enum |
tillbaka | flyktiga | auto | extern |
kort | när |
|
Håll nedanstående punkter i åtanke när du börjar programmera i C: |
Du använder endast några av de C-nyckelord i din kod. Några av dem brukar du aldrig använda.
-
Det mesta av arbetet i din kod görs av funktioner, inte med nyckelord.
-
C Språkvariabler> I stället för att alla variabler flyter, är det mer effektivt att undersöka vilken typ av data som lagras och välj sedan en lämplig C-variabel typ.
-
Typ
Värdeområde
_Bool
0 till 1 | char |
---|---|
-28 till 127 | unsigned char |
0 till255 | kort int |
-32, 768 till 32, 767 | osignerad kort int |
0 till 65, 535 | int |
-2, 147, 483, 648 till 2, 147, 483, 647 | osignerad int > 0 till 4, 294, 967, 295 |
lång int | -2, 147, 483, 648 till 2, 147, 483, 647 |
osignerad lång int | 0 till 4, 294, 967, 295 |
float | 1.17 × 10-38 till 3. 40 × 1038 |
dubbel | 2. 22 × 10-308 till 1. 79 × 10308 |
Beakta dessa C-språkvariationstyp: | Se till att du väljer rätt variabeltyp för de värden du behöver lagra. |
_Bool-typen lagrar endast två värden, 0 och 1, som kan representera TRUE eller FALSE eller On eller Off eller något binärt tillstånd. | Char variabel typen lagrar teckenvärden, men det kan också användas för att lagra små heltal. |
Heltal, eller heltal, lagras i de olika variabeltyperna.
-
Alla typer av värde, från de allra stora till de mycket små, och eventuella fraktioneringsvärden lagras i float- och dubbeltyperna.
-
Kom ihåg att använda int-värden för funktioner som genererar heltal, till exempel getchar (). Det är lätt att anta att funktionen returnerar ett char-värde på grund av funktionens namn.
-
C saknar en strängvariabler. Istället används en rad char variabler.
-
Andra variabla typer inkluderar strukturer och pekare.
-
Vanliga C Escape Sequences
-
När du inte kan skriva in tecken i din sträng, använd flyktsekvenserna för att infoga icke-skrivbara tecken i textsträngar, variabler och arrayer. Här är vanliga C-flyktsekvenser:
-
Tecken
-
Vad det representerar eller visar
a
Bell ("pip!")
b | Backspace, non-erasing | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
f < Formmatning eller rensa skärmen | n | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Newline | r | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Vagnretur | t | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Flik | v | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Vertikal flik | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Backslash karaktär | ? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Frågetecken | ' | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Enkelt citat | " | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Vanliga C-konverteringstecken | Funktionerna printf () och scanf () använder konverteringstecken som platshållare för olika värden. Konverterings tecken används för att ange ett värde när funktionen körs i det slutliga programmet. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Konverteringstecken | Vad den visar | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
%% |
En enda karaktär (char) | % d |
---|---|
Heltalsvärde kort, int) | % e |
Flytpunktsvärde i vetenskaplig notering med lite E | (flyt, dubbel) |
% E | Flytpunktsvärde i vetenskaplig notering med en stor E |
% f |
% f |
Flytande punktvärde i decimalbeteckning (float, dubbel) | % g
Substitutter% f eller% e, vilket är kortare) |
% G | Substituenter% f eller% E, vilket är kortare (flyt, dubbel) |
% i | Heltalsvärde (kort, int) |
% ld | Långt heltal (lång int) |
% o | Ej angivet oktalt värde, ingen ledande noll |
% p | Minnesplats i hexadecimal (* pekare) |
% s | String (char *) >% u |
Ej inloggat heltal (osignerat kort, osignerat int, osignerat | långt) |
% x | Osignerat hexadecimalt värde, små bokstäver (kort, int, långt) |
% X | Unsigned hexadecimal värde, stora bokstäver (kort, int
lång) |
Order of Pr ecedence i C | Den |
prioriteringsordningen | bestämmer vilka operatörer som verkar på ett värde först. När du utarbetar uttalanden vet du prioritetsordningen för att försäkra dig om att programmet gör vad du tänker.
Operator (s) |
Kategori
Beskrivning Unary
Logiskt inte; associativitet går åt vänster | ++ - | Unary |
---|---|---|
Ökning, minskning, läs från höger till vänster | * /% | Matematik |
Multiplikation, division, modulo | + - | Math |
Addition, subtraction | <> | Binär |
Skift vänster, skift höger | = | Jämförelse |
Mindre än större än mindre än eller lika med, större än eller | lika med | ==! = |
Jämförelse | Är lika med, inte lika med | &
Binär |
och | ^ | Binär |
Exklusiv eller (XOR) | | | Binary |
eller | && | Logisk |
och | || | Logisk |
eller | ?: | Jämförelse |
Konstig om sak; associativitet går åt höger till vänster | = | Uppgift |
Variabel uppdragsoperatör, inklusive + =, * = och samtliga | uppdragsoperatörer | , |
(Ingen) | Kommatecken separerar objekt i ett för | uttalande; prioritet från vänster till höger
Prioritetsordningen kan överskridas genom att använda parenteser. Lägg enkelt in inom en uppsättning parentes den del av ekvationen som du vill exekvera först. Den delen utförs först oavsett vad prioriteringen är. |