Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

if{}, if{} e lo stile

Linguaggi e sistemi

Moderatori: Foto UtentePaolino, Foto Utentefairyvilje

0
voti

[11] Re: if{}, if{} e lo stile

Messaggioda Foto UtenteWALTERmwp » 5 mag 2017, 21:18

Ianero ha scritto:Avanti Walter ora ammettilo (...)
no, non ho l'abitudine di spannarmi, mi sembrava solo comodo e veloce come riferimento, c'è un minimo di casistica.

Saluti
W - U.H.F.
Avatar utente
Foto UtenteWALTERmwp
30,2k 4 8 13
G.Master EY
G.Master EY
 
Messaggi: 8986
Iscritto il: 17 lug 2010, 18:42
Località: le 4 del mattino

0
voti

[12] Re: if{}, if{} e lo stile

Messaggioda Foto UtenteFedhman » 6 mag 2017, 1:27

WALTERmwp ha scritto:Io indento così.
Ognuno ha le proprie abitudini e quando si legge un listato impostato diversamente si ha la sensazione di perdere immediatezza; almeno a me da quell'impressione.

Saluti


Gli if senza le graffe! Sono sconvolto

:mrgreen:
I don't fight weather - Woodrow W. Smith
Avatar utente
Foto UtenteFedhman
5.195 2 9 13
Master
Master
 
Messaggi: 483
Iscritto il: 4 giu 2013, 14:05
Località: Augusta Taurinorum

0
voti

[13] Re: if{}, if{} e lo stile

Messaggioda Foto UtenteGuidoB » 6 mag 2017, 8:31

Anch'io uso le graffe nel modo che mette a disagio Foto UtenteFedhman.
In più sono sprecone, lascio righe vuote tra gruppi di istruzioni, e mi piace allineare in verticale le linee che contengono operazioni simili, aggiungendo spazi se necessario.
Metto spazi intorno a +, -, *, /, =, ecc..
Preferisco nomi delle variabili lunghi e descrittivi, ed evitare troppi commenti dentro il codice.

I tab danno troppi problemi, preferisco indentare con 4 spazi.

Codice: Seleziona tutto
#include <time.h>
#include <string.h>

// ...

#define NOERROR                  0
#define ERROR_ILLEGAL_FORMAT    -1
#define ERROR_ILLEGAL_DATE      -2

// ...

/*******************************************************************************
Function:
int millenniumDays(char *yyyymmdd, long *days)

Parameters:
char *yyyymmdd       : date in yyyymmdd format
long *days           : to return elapsed days

Description:
returns the number of elapsed days from January 1st, 2000 to the specified date
(not included), or until today (not included) if the yyyymmdd string is NULL.

Return values:
NOERROR              : correct execution
ERROR_ILLEGAL_FORMAT : the input string has an illegal format
ERROR_ILLEGAL_DATE   : the input date is out of bounds or incorrect

Notes:
works from 1900-03-01 to 2100-02-28.
Returns negative values for dates before 2000-01-01.
*******************************************************************************/

int millenniumDays(char *yyyymmdd, long *days)
{
    int bError = NOERROR;

    if (yyyymmdd == NULL)
    {
        // Calculate elapsed days from 2000-01-01 until today (not included):
        const int secondsInADay                  = 86400;
        const int daysFrom1970_01_01To2000_01_01 = 10957;

        // Works only for system dates from 1970 onward
        //(otherwise truncation toward 0 instead of floor in C99 integer division must be taken into account):
        *days = (time(NULL) / secondsInADay - daysFrom1970_01_01To2000_01_01);
    }
    else
    {
        // Calculate elapsed days from 2000-01-01 until yyyymmdd date (not included):
        const int monthDays              [12] = {31,  28,  31,  30,  31,  30,  31,  31,  30,  31,  30,  31};
        const int sumOfPreviousMonthsDays[12] = { 0,  31,  59,  90, 120, 151, 181, 212, 243, 273, 304, 334};
        int       year, month, day;

        if ((strspn(yyyymmdd, "0123456789") == 8)
            &&
            (yyyymmdd[8] == '\0'))
        {
            year  = (yyyymmdd[0] - '0') * 1000 + (yyyymmdd[1] - '0') * 100 + (yyyymmdd[2] - '0') * 10 + (yyyymmdd[3] - '0');
            month = (yyyymmdd[4] - '0') *   10 + (yyyymmdd[5] - '0');
            day   = (yyyymmdd[6] - '0') *   10 + (yyyymmdd[7] - '0');

            // If it is an acceptable date:
            if ((((year > 1900) && (year < 2100)) || ((year == 1900) && (month >= 3)) || ((year == 2100) && (month <= 2)))
                &&
                ((month >= 1) && (month <= 12))
                &&
                ((day >= 1) && ((day <= monthDays[month - 1]) || ((day == 29) && ((year % 4) == 0) && (year != 2100)))))
            {
                // Calculate year and month days, withouth adjusting for leap years for the moment:
                *days  = (year - 2000) * 365 + sumOfPreviousMonthsDays[month - 1];

                // Adjust for leap years and add day-of-month days:
                // (*days - 32..58) / (365 * 4): anything works between 32 and 58 to distinguish between February and March,
                //                               to add one day every 4 years, but only from March onward.
                // - (*days < 32..58): is needed because C99 integer division does not floor the result, but truncates it toward 0.
                *days += (*days - 32) / (365 * 4) - (*days < 32) + day;
            }
            else
            {
                bError = ERROR_ILLEGAL_DATE;
            }
        }
        else
        {
            bError = ERROR_ILLEGAL_FORMAT;
        }
    }

    return bError;
}

// ...
Big fan of ƎlectroYou!       Ausili per disabili e anziani su ƎlectroYou
Caratteri utili: À È É Ì Ò Ó Ù α β γ δ ε η θ λ μ π ρ σ τ φ ω Ω º ª ² ³ √ ∛ ∜ ₀ ₁ ₂ ₃ ₄ ₅ ₆ ∃ ∄ ∆ ∈ ∉ ± ∓ ∾ ≃ ≈ ≠ ≤ ≥
Avatar utente
Foto UtenteGuidoB
17,8k 7 12 13
G.Master EY
G.Master EY
 
Messaggi: 2809
Iscritto il: 3 mar 2011, 16:48
Località: Madrid

0
voti

[14] Re: if{}, if{} e lo stile

Messaggioda Foto Utenteluxinterior » 6 mag 2017, 8:51

Pensavo di essere l'unico e non osavo dichiararlo ma io adotto lo sile GuidoB
Spazi in quantità, nomi variabili lunghi quanto serve, allineamento verticale,
Unica differenza identaizone 2 spazi (no tab!)
Avatar utente
Foto Utenteluxinterior
4.311 3 4 9
Master EY
Master EY
 
Messaggi: 2690
Iscritto il: 6 gen 2016, 17:48

3
voti

[15] Re: if{}, if{} e lo stile

Messaggioda Foto Utentexyz » 6 mag 2017, 9:12

Io ho uno stile di scrittura in C che coincide quasi totalmente con le linee guida del Kernel di Linux sul codice:

https://www.kernel.org/doc/html/v4.10/p ... style.html

Se devo formattare del codice velocemente utilizzo il programma Astyle, ha una lista di stili già pronta, basta selezionare quello desiderato:

http://astyle.sourceforge.net/astyle.ht ... le_Options

Per i tab uso l'impostazione di default a 8 colonne, con alcuni linguaggi ho i SoftTab (o SmartTab) a 4 colonne. L'impostazione globale viene effettuata via Editorconfig:

http://editorconfig.org

ha i plugin per molti editor tra cui quello che uso io Vim.
Avatar utente
Foto Utentexyz
6.864 2 4 6
G.Master EY
G.Master EY
 
Messaggi: 1778
Iscritto il: 5 dic 2009, 18:37
Località: Italy Turin

0
voti

[16] Re: if{}, if{} e lo stile

Messaggioda Foto UtenteSjuanez » 6 mag 2017, 10:58

Questione importante quando si lavora a progetti insieme agli altri, molto meno quando si è da soli a fare le proprie cosette hobbistiche.

Io per le classi, ma solo per le classi metto la parentesi a capo. Magari anche per qualche documento CSS.

Per cicli, if e funzioni, sempre sulla stessa riga che sennò consumo la rotella del mouse! :mrgreen:

Quando è opportuno uno Shor If mi fa sentire molto meglio! :ok:
Codice: Seleziona tutto
echo $var==TRUE ? 'TRUE' : 'FALSE';


Certo che quando faccio un giretto su Python e non uso le parentesi....AH! aria fresca :D :D :D

Aggiungo che gli IDE moderni spesso ti fanno scegliere lo stile che vuoi usare e sistemano tutto magicamente loro. Penso a PHP Storm che è davvero :cool: :cool: :cool:

Sull'IDE di Arduino incasino spesso tutto perché scrivo con una mano solo che l'altre regge qualche filo #-o Però sembra apprezzare lo stesso, sarà abituato a peggio :mrgreen:

O_/ O_/ O_/
Più so e più mi accorgo di non sapere.

Qualsiasi cosa abbia scritto, tieni presente che sono ancora al mio primo rocchetto di stagno.
Avatar utente
Foto UtenteSjuanez
11,3k 6 8 13
G.Master EY
G.Master EY
 
Messaggi: 3479
Iscritto il: 18 mar 2015, 13:48

0
voti

[17] Re: if{}, if{} e lo stile

Messaggioda Foto UtenteTardoFreak » 6 mag 2017, 12:39

Hasta la tabulazione a due spazi siempre!
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,9k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15754
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

0
voti

[18] Re: if{}, if{} e lo stile

Messaggioda Foto UtenteIlGuru » 6 mag 2017, 12:44

In passato usavo la prima, ma ora che compongo codice principalmente con notepad++ uso la seconda perché quando l'editor contrae le strutture con la prima spesso si incasina.
Comunque sia uso una sola versione per progetto e quando apro codice composto in passato perdo anche ore ad eggiornare tutto lo stile :D per questo apprezzo molto linguaggi come python e coffescript
Sui nomi delle variabili sono maniaco, o in italiano o in inglese, mai miscugli tipo DateLetturaOne ecc
\Gamma\nu\tilde{\omega}\theta\i\ \sigma\epsilon\alpha\upsilon\tau\acute{o}\nu
Avatar utente
Foto UtenteIlGuru
5.482 2 10 13
G.Master EY
G.Master EY
 
Messaggi: 1924
Iscritto il: 31 lug 2015, 23:32

0
voti

[19] Re: if{}, if{} e lo stile

Messaggioda Foto UtenteFedhman » 6 mag 2017, 14:07

Per la tabulazione uso sempre il TAB, per i nomi di variabili una volta usavo NomeDellaVariabile ma ultimamente scrivo nome_della_variabile
I don't fight weather - Woodrow W. Smith
Avatar utente
Foto UtenteFedhman
5.195 2 9 13
Master
Master
 
Messaggi: 483
Iscritto il: 4 giu 2013, 14:05
Località: Augusta Taurinorum

0
voti

[20] Re: if{}, if{} e lo stile

Messaggioda Foto UtenteTardoFreak » 6 mag 2017, 14:37

Anche io metto molte istruzioni in una singola riga proprio per avere meno linee.
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,9k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15754
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

PrecedenteProssimo

Torna a PC e informatica

Chi c’è in linea

Visitano il forum: Nessuno e 41 ospiti