faretesto > comp.lang.* > comp.lang.c

Roberto Tempesti (02.08.2019, 18:34)
Il 20/07/2019 15:20, enoquick ha scritto:
> Il 20/07/19 06:26, 4ndre4 ha scritto:
>> On 20/07/2019 12:23, enoquick wrote:
>>> ed ecco il solito bradipo di prima che continua con i suoi vagiti

>> T-A-C-I.

> while(true)
> TACI();


Non ho letto alcun messaggio di questa discussione, tuttavia di una cosa
sono certo: sei un imbecille.
CortexA57 (30.08.2019, 16:33)
Il 19/07/2019 19:41, 4ndre4 ha scritto:
> On 19/07/2019 06:23, arkkimede wrote:
> Caro arkkimede, puzzi tanto di troll, sai? :)
> Il cast sul valore di ritorno di malloc() va evitato in C e per ottime
> ragioni:
> Si tratta di best practices che ogni esperto programmatore C (quindi NON
> enoquick), conosce.

Bah, in *questo specifico caso*, se proprio manca l' header il
compilatore da gia' un warning sulla mancanza del prototipo , quindi
cast o meno non cambia nulla a livello di avvertimento all' utente,
sempre che non si lavori con compilatori del secolo scorso :-)

In ogni caso,la funzione malloc(), se trovata dal linker ritorna un
puntatore corretto,che viene correttamete caricato nella variabile,
cast o meno, per cui la 'best pratices' in questione in realta' e' solo
.... fuffa.
aa
arkkimede (03.09.2019, 14:39)
Il giorno venerdì 30 agosto 2019 16:33:08 UTC+2, CortexA57 ha scritto:
> > Caro arkkimede, puzzi tanto di troll, sai? :)


In questo gruppo di discussione nel corso degli anni ho sempre avuto un aiuto che mi ha risolto i problemi che a volte incontro nella programmazione.
Negli ultimi anni però tendo ad evitare perché ogni volta si scatenano diatribe tra Tizio che offende Caio dandogli dell'incompetente perché la verità assoluta ce la ha solo Tizio. A questo punto Caio risponde etc. etc. etc.

In poche parole il gruppo si é inaridito e ci sono pochissime domande.

Sarebbe bello che il gruppo riprendesse ad essere frequentato, magari un problema di un altro può essere utile anche a me.

Quello che ci vorrebbe è un maggior rispetto degli altri.

Quello che penso io è diverso da quello che pensi tu e lo si può dire in maniera civile senza offendere e trascendere.

Non sono un troll (sono anche andato a vedere cosa voleva dire) ma solo unapersona che a volte ha bisogno dell'espereinza di chi ne sa di più dime.
Dr.UgoGagliardelli (04.09.2019, 08:05)
Il 03.09.2019 14.39, arkkimede ha scritto:
> Il giorno venerdì 30 agosto 2019 16:33:08 UTC+2, CortexA57 ha scritto:
>>> Caro arkkimede, puzzi tanto di troll, sai? :)

> In questo gruppo di discussione nel corso degli anni ho sempre avuto un aiuto che mi ha risolto i problemi che a volte incontro nella programmazione.
> Negli ultimi anni però tendo ad evitare perché ogni volta si scatenano diatribe tra Tizio che offende Caio dandogli dell'incompetente perché la verità assoluta ce la ha solo Tizio. A questo punto Caio risponde etc. etc. etc.
> In poche parole il gruppo si é inaridito e ci sono pochissime domande.


Diciamo che nel gruppo ci sono pochissime domande forse perche' le
problematiche del linguaggio C, a cui il gruppo e' dedicato, sono meglio
trattate altrove. Ad esempio su stackoverflow, ma le risorse in rete
sono pressoche' infinite.
Si aggiunga il fatto che, a sentimento, mi sembra sia lecito affermare
che il C non sia piu' il linguaggio di punta di una volta. Ad esempio
sono almeno 15 anni che non mi capita piu' di iniziare nuovi progettti
in C, anche se mi capita di mettere le mani su sorgenti anche di piu' di
20 anni fa.
4ndre4 (09.09.2019, 17:44)
On Friday, 30 August 2019 15:33:08 UTC+1, CortexA57 wrote:

[...]
Ma quale fuffa! Ma quali compilatori del secolo scorso! Ma che cazzo stai dicendo! Hai almeno capito cosa c'e` scritto a quel link? Ma la finite di scrivere cazzate? Volete informarvi, per una buona volta? Leggere, studiare ecapire? Cosa cazzo c'entra il "livello di avvertimento all'utente"? Cosa cazzo sarebbe un "puntatore corretto"? Ma andate a studiare!!!
4ndre4 (09.09.2019, 17:46)
On Tuesday, 3 September 2019 13:39:09 UTC+1, arkkimede wrote:

> Quello che ci vorrebbe è un maggior rispetto degli altri.


No, quel che ci vuole e` che gli inesperti come te accettino i consigli, ringrazino, e abbassino la testa, piuttosto che rispondere con un "grazie, macontinuo a fare come mi pare". Se non vuoi essere tacciato d'essere un troll, non ti comportare da troll.
CortexA57 (10.09.2019, 13:59)
Il 09/09/2019 17:44, 4ndre4 ha scritto:
CortexA57 (10.09.2019, 14:45)
FYI
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>#include <stdio.h> /* printf, scanf, NULL */

//#include <stdlib.h> /* malloc, free, rand */ <== manca 'header
#include <string.h>

typedef struct _cc_{
int ixx;
char i8;
}CC_T;

int main(int argc, char *argv[])
{
CC_T* pmem=NULL;
pmem= malloc(sizeof(CC_T) );
return 0;
}

Risultato compilazione:
implicit declaration of function 'malloc' [-Wimplicit-function-declaration]
assignment makes pointer from integer without a cast [-Wint-conversion]
1> Linking demo.elf
Build complete

Va da se' che il primo warning è sufficiente per rilevare il problema,
anche se chi ha studiato probabilmente necessita anche dell' ulteriore
warning sul cast :-)

#include <stdio.h> /* printf, scanf, NULL */
//#include <stdlib.h> /* malloc, free, rand */ <== manca header
#include <string.h>

typedef struct _cc_{
int ixx;
char i8;
}CC_T;

int main(int argc, char *argv[])
{
CC_T* pmem=NULL;
pmem= (CC_T*)malloc(sizeof(CC_T) );
return 0;
}
Risultato compilazione:
implicit declaration of function 'malloc' [-Wimplicit-function-declaration]
1> Linking demo.elf
Build complete

Idem come sopra, anche il cast elimina un warning
NB. in fase di link l' indirizzo della funzione malloc è risolto
correttamete ed il codice funziona comunque (ma non è una bella pratica,
la mancanza dell' header, non il cast).

#include <stdio.h> /* printf, scanf, NULL *
#include <stdlib.h> /* malloc, free, rand */
#include <string.h>

typedef struct _cc_{
int ixx;
char i8;
}CC_T;

int main(int argc, char *argv[])
{
CC_T* pmem=NULL;
pmem= (CC_T*)malloc(sizeof(CC_T) );
pmem= malloc(sizeof(CC_T) ); // :-)
return 0;
}
Risultato compilazione:
1> Linking demo.elf
Build complete

No warnings :-)

AA

Discussioni simili