Acasă Finanțe personale Control variabil pentru programarea C - dummies

Control variabil pentru programarea C - dummies

Cuprins:

Video: 4. Scheme logice, instructiuni de control - Curs programare începători 2024

Video: 4. Scheme logice, instructiuni de control - Curs programare începători 2024
Anonim

În programarea C, poți să-ți pui mărimea variabilei în codul tău schimbând-o într-un alt tip, dându-i un alt nume în totalitate sau dând o vrajă variabilă pentru a satisface nevoile dvs., binevoitoare sau nu.

Typecasting în necredință

Când este o variabilă float nu un float? Când e tipic difuzat într-un int, desigur. Acest truc este posibil în C utilizând tipul de difuzare. De exemplu:

(int) datoria

În linia precedentă, variabila flotantă datoria este difuzată la o valoare int. Parametrul int în paranteze direcționează compilatorul pentru a trata valoarea datoria ca număr întreg.

De ce ar vrea cineva să facă asta?

Întrucât uneori o funcție necesită un anumit tip de variabilă și acel tip nu este disponibil. Mai degrabă decât să convertiți și să jonglați mai multe tipuri de variabile într-un singur program, puteți pur și simplu să introduceți o variabilă în tipul dorit. Nu este un truc comun, dar este adesea necesar, așa cum se arată în "Nu-i drept".

NU ESTE DREAPTA

#include int main () {int a, b; float c; printf ("Introduceți prima valoare:"); scanf ("% d", & a); printf ("Introduceți a doua valoare:"); scanf ("% d", & b); c = a / b; printf ("% d /% d =% 2fn", a, b, c); retur (0);}

Exercițiu 1: Introduceți codul sursă de la "Nu este drept" în editorul dvs. Construiți și alergați.

Introduceți a doua valoare:

2 3/2 = 1. 00 Evident, este greșit faptul că 3 ÷ 2 s-ar descurca cumva la 1. 50. Dacă computerul spune că este 1. 00, calculatorul trebuie să fie corect. Sau poate calculatorul este doar confuz, deoarece pe linia 12 a codului sursă, două valori int sunt împărțite, iar rezultatul este atribuit unui float. Dar acest lucru nu funcționează, totuși, deoarece împărțirea unui întreg cu un întreg în C dă un întreg ca rezultat.

Valoarea 1 este cea mai apropiată valoare integeră de 1. 50. Deci, chiar dacă calculatorul este greșit, face exact ceea ce a fost spus să facă.

Exercițiu

2:

Modificați codul sursă schimbând Linia 12 pentru a citi c = (float) a / (float) b; Salvați schimbarea. Construiți și executați utilizând aceleași valori ca și cele afișate. Iată noua ieșire:

Introduceți prima valoare: 3 Introduceți a doua valoare: 2 3/2 = 1. 50

Mai bună. Acest lucru se datorează faptului că introduceți variabilele de tip

a

și b în ecuație, permițând temporar compilatorului să le trateze ca numere în virgulă mobilă. Prin urmare, rezultatul este ceea ce ar trebui să fie. Cum să creați lucruri noi cu typedef

Aveți posibilitatea să obțineți o mulțime de probleme cu cuvântul cheie typedef.Poate arunca cuvintele și operatorii obișnuiți C din sinele lor consecvent în tot felul de rău. PERII DE

TYPEDEF

#include typedef int stinky; stinky principal () {stinky a = 2; printf ("Toți știu că"); printf ("% d +% d =% dn", a, a, a + a); retur (0);} În pericolele

typedef

, instrucțiunea typedef de la Linia 3 definește cuvântul stinky pentru a fi același cu cuvântul cheie int. Oriunde se poate utiliza int în cod, puteți folosi în schimb cuvântul stinky, așa cum se arată în liniile 5 și 7. Exercițiu 3:

Utilizați codul sursă din The Perils of typedef < pentru a crea un nou program, demonstrând că un tip variabil stinky este același ca un int. Construiți și alergați. Acordat, exemplul din The Perils of typedef este destul de stupid; niciun programator serios nu ar crea un adevărat program de genul acesta. În cazul în care tippedef este utilizat cel mai adesea este în definirea structurilor. Instrucțiunea tippedef ajută la reducerea dificultății acelei activități.

Crearea unei structuri a căii tradiționale arată modul în care funcționează structura imbricată a structurii, dat fiind o cunoaștere a structurilor: CREAREA UNEI STRUCTURI MODUL TRADIȚIONAL struct id {char first [20]; char ultima [20];}; struct date {int luna; int zi; int year;}; struct uman {nume id struct nume; struct data nașterii;};

Folosind

t

ypedef

pentru a defini o structură arată cum vor avea loc declarațiile dacă ați tastat structurile: UTILIZAREA TYPEDEF DEFINIREA STRUCTURII > typedef struct id {în primul rând [20]; char last [20];} personal; typedef struct date {int luna; int zi; int year;} calendar; struct uman {nume personal; ziua de naștere a calendarului;};

În această listă, id-ul structurii este tastat de numele personal. Acesta nu este un nume de variabilă; e un tipar. Este același lucru cu a spune: "Toate referințele la struct id sunt acum identice cu numele personal. " De asemenea, data structurii este introdusă în calendar. În cele din urmă, în declarația structurii umane, se folosesc numele typedef în locul definițiilor complexe ale structurii. O STRUCTURĂ NESTED

#include #include int principal () {struct date {int lună; int zi; int year;}; structură umană {char name [45]; struct data nașterii;}; structură președinte uman; strcpy (numele președintelui, "George Washington"); președinte. zi de nastere. luna = 2; președinte. zi de nastere. zi = 22; președinte. zi de nastere. an = 1732; printf ("% s sa născut pe% d /% d /% dn", președinte, nume, președinte, ziua de naștere, luna, președinte, ziua de naștere.

Înlocuiți membrul

în structura umană din structura A Nested cu o structură imbricată. Denumiți acea structură id și să conțină doi membri, caractere char, primul și ultimul, pentru stocarea primului și ultimului nume al unui individ.

Dacă faci totul corect, trimiterea la numele președintelui va fi președintele variabilelor

. Nume. primul și președinte. Nume. Ultima . Asigurați-vă că atribuiți valori acestor variabile în codul dvs. și afișați rezultatele. Exercițiul 5

: Modificați codul sursă din proiectul pe care îl creați în Exercițiul 4 pentru a utiliza typedef, așa cum se arată în Utilizarea t ypedef pentru Definirea unei structuri. Construiți și alergați.

Se poate argumenta că folosirea lui typedef nu face codul dvs. mai clar decât dacă ați folosit pur și simplu nume de variabile bune și text bine formatat. De exemplu, este posibil să nu utilizați typedef pur și simplu pentru că nu doriți să vă amintiți ce ați definit. Dar veți întâlni un alt cod care utilizează typedef. Nu-l lăsa să vă sperie. Adevărul avantaj al folosirii lui typedef cu o structură este, probabil, că te economisește de la tastarea prea mult timp a cuvântului struct.

Control variabil pentru programarea C - dummies

Alegerea editorilor

Administrator de rețea: Zone de căutare inversă - dummies

Administrator de rețea: Zone de căutare inversă - dummies

Interogări DNS obișnuite sunt interogări de căutare înainte corespunde unui nume de domeniu complet calificat. O căutare inversă este opusul unei căutări forward: returnează numele de domeniu complet calificat al unei gazde pe baza adresei sale IP. Căutările inverse sunt posibile din cauza unui domeniu special numit ...

Rețea Elemente de bază: Clienți și servere - manechine

Rețea Elemente de bază: Clienți și servere - manechine

Computerul de rețea care conține hard disk-urile, imprimantele și alte resurse care sunt partajate cu alte calculatoare de rețea se numește un server. Acest termen vine în repetate rânduri, deci trebuie să-l amintiți. Scrie-o pe spatele mâinii tale stângi. Orice computer care nu este un server este numit client. Aveți ...

Retea Bazele: Poduri - dummies

Retea Bazele: Poduri - dummies

O punte este un dispozitiv care conecteaza doua retele astfel incat sa actioneze ca si cum ar fi o rețea. Podurile sunt utilizate pentru a împărți o rețea mare în două rețele mai mici din motive de performanță. Vă puteți gândi la un pod ca pe un repetor inteligent. Repetoarele ascultă semnale care coboară pe un cablu de rețea, amplifică ...

Alegerea editorilor

ÎMprumuta și tweak idei de la alte comunități online - dummies

ÎMprumuta și tweak idei de la alte comunități online - dummies

, Mai degrabă decât să ia ideile altcuiva complet pentru dvs. comunitate online, încercați să riffați pe aceeași idee, dar nu atât de mult încât este evident că nu sunteți creierul din spatele brainstorming-ului. Idei sunt acolo pentru a lua, dar nu ar fi mai degrabă văzute ca cineva inovatoare, nu cineva care scours pe web ...

Branding Blogul tău

Branding Blogul tău

Branding blog-ul tău merge mult spre a face dacă este ușor de recunoscut pentru cititorii tăi. Când vedeți un punct roșu în interiorul unui cerc roșu, ce magazin vine în minte? Ce zici de acele arcuri de aur? Un nume de marcă apare în minte atunci când vedeți simbolul swoosh? La fel ca magazinele populare, restaurantele și încălțămintea ...

Construiți un Blog Mama care este Sellable - dummies

Construiți un Blog Mama care este Sellable - dummies

Dacă obiectivul pe termen lung este de a vinde blogul dvs. ar trebui să o construiască cu acest scop în minte. Evitați asocierea prea intensă a blogului cu marca dvs. personală. Un blog care poate fi valoros cu orice scriitor la cârma trebuie să îndeplinească majoritatea, dacă nu toate, următoarele criterii: Blogul este concentrat ...

Alegerea editorilor

Cum să creați o nouă campanie de anunțuri LinkedIn - dummies

Cum să creați o nouă campanie de anunțuri LinkedIn - dummies

LinkedIn oferă servicii de publicitate pentru afacerea dvs. Dacă vă decideți să utilizați LinkedIn ca instrument de marketing, va trebui doar să obțineți o nouă campanie de anunțuri în lucrări. Când sunteți gata să începeți o nouă campanie, urmați acești pași:

Opțiuni de filtrare pentru anunțul dvs. LinkedIn - manechine

Opțiuni de filtrare pentru anunțul dvs. LinkedIn - manechine

Ce opțiuni de filtrare aveți pentru anunțul dvs. LinkedIn? Alte rețele de publicitate vă permit să filtrați publicul vizat de câteva atribute cunoscute ale persoanei care vă va vedea anunțul, sexul și locația membrilor din public. LinkedIn vă permite să faceți un pas mai departe permițându-vă ...

Oferind și primind viziuni pe LinkedIn - manechine

Oferind și primind viziuni pe LinkedIn - manechine

Deși mulți oameni cred că "Nu este ceea ce știi, știi, "care este unul dintre principalele motive pentru care LinkedIn este atât de valoros, mulți oameni (recrutorii, angajații, directorii executivi, investitorii și altele) sunt foarte interesați de ceea ce știi. În mod logic, oamenii care vă cunosc cel mai bine sunt oamenii din rețeaua dvs., care ...