Pages: 1 [2]   Go Down
Author Topic: Operatore - con String  (Read 1341 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

atoi() fa parte della libreria standard del C, quindi sulla sua presenza in un dato ambiente direi che si può stare abbastanza tranqulli a prescindere dagli aggiornamenti smiley
Logged

Milan
Offline Offline
Sr. Member
****
Karma: 0
Posts: 375
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non entravo nel merito di stdlib.h, ma di usare un include.
Il mio linguaggio preferito è Delphi che non so se conosci, ma è come dire li..abbassare gli uses...per evitare definizioni ricorsive.
Insomma, diventa uno stile a priori.

Mi viene un dubbio, accetta String in ingresso o pchar?

N
Logged

Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Delphi lo conosco bene di nome (il ns. gestionale ad esempio è scritto in Delphi). Usato non proprio, ci ho giocato tanto tempo fa... (ma col turbo pascal ero bravino... smiley )

Quote
Mi viene un dubbio, accetta String in ingresso o pchar?

atoi() accetta pchar come argomento (const char* nel gergo C/C++)

http://www.cplusplus.com/reference/clibrary/cstdlib/atoi/

Quando si passa dagli array null-terminated del C ad una classe stringa si cambia approccio, perché la rappresentazione stringa è già nell'oggetto stesso. Quindi si dota la classe stringa di un metodo tipo int toInt(), e/o si definisce l'operatore di casto-to-int per la classe, in modo che String s="10"; int i = (int)s; abbia un senso. VB.net usa un approccio inverso: fornisce una classe per ogni tipo nativo, e ognuna di queste classi ha un metodo di classe che fa il parsing di una stringa e ritorna il tipo di dato numerico corrispondente. Ad esempio i = Integer.parse(str).
Logged

Milan
Offline Offline
Sr. Member
****
Karma: 0
Posts: 375
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Allora era per quello.
Me ne ero fatto uno che accettasse in entrata il mio tipo di dato e uscisse con quello che mi serviva.

Quote
VB.net

Ecco VB.net penso che sia uno di quei linguaggi che non userò mai (Dio mi aiuti), se devo lavorare in .Net che sia c#.

N
Logged

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10106
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ho usato il VB (tradizionale), ma ora che son stato costretto ad usare il .net mi son buttato sul c#.
è un casino quando programmi mezaz giornata in VB e mezza in c o altro, ti ritrovi a mischiar le sintassi.

Quote
fornisce una classe per ogni tipo nativo, e ognuna di queste classi ha un metodo di classe che fa il parsing di una stringa e ritorna il tipo di dato numerico corrispondente. Ad esempio i = Integer.parse(str).

java fa un mischione, perchè ha sia gli oggetti (Integer, Float, etc..) che i tipi primitivi (int, float, etc..). Se usi gli oggetti hai i metodoti toInt() etc, se usi i primitivi o le stringhe usi dei metodi statici delle classi sopracitate.
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Vb.net fa lo stesso "mischione".
Logged

Selvazzano Dentro - Padova
Offline Offline
God Member
*****
Karma: 28
Posts: 932
"Chi sa fa, chi non sa insegna"
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Anche la classe String possiede il suo bravo toInt(), peccato che (nonostante le segnalazioni) questa funzione non sia documentata!

La uso spesso per introdurre numerici da Monitor.

Ettore Massimo Albani
Logged

Offline Offline
God Member
*****
Karma: 8
Posts: 550
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@lesto: son d'accordo che gli stream(e anche le string) non vadano molto bene con arduino se fai qlks di serio,e aggiungo come motivo(oltre ai soliti noti) il fatto che fanno allocazioni/dealloc,e arduino dopo un po' può piantarsi in casi particolari..
atoi mi sembra invece una buona scelta,comunque meglio di quanto possa fare un programmatore normale..contando che di solito a ste librerie vengano fatte molte ottimizzazioni..
Logged

Pages: 1 [2]   Go Up
Jump to: