Newsgroup: it.discussioni.litigi
Titolo: [TU] Buttha

Lavorare in VC++ 1.51 e Visual Fox Pro 7 insieme è deprimente...
/

 
installa mingw e usa il gcc
-- 
"riconosco un coglione quando lo vedo a naso"
"Bene che c'e' di cosi strabiliante in questa frase ???
Io prendo un coglione lo vedo e non mi basta.
Poi lo annuso e riconosco che è un coglione.
Insomma quando lo vedo riconosco un coglione a naso.
Che c'e' di cosi strano ?"
(Gobbacci)


naaa, son 3 file c di conta, il problema è che sto sviluppando per un
palmare dos del cazzo in radiofrequenza 11mbit con le librerie socket per
dos... ma sono impedito con le stringhe diciamo tutta la verità...
Il fox lo uso per fare il motore centrale e va da Dio come sempre...
/

Lavorare in VC++ 1.51 e Visual Fox Pro 7 insieme è deprimente...
se ti puo' consolare, credo sia meglio di questo
http://e-0.org/dbg.php

 
http://e-0.org/dbg.php
Tu che sei tanto bravo fammi un po di insegnamento nella gestione delle
strnghe in c puro...
Allora mi incasino tantissimo quando le passo alle funzioni.
Allora faccio cosě di solito dove infregno che ogni tanto mitrovo stringhe
vuote e similari durante il percorso...
char *sCodiceRF = "          \0";
.....
.....
.....
strcpy(sCodiceRF,  "          \0");
iUDPResult = GET_RF_UNQ(sCodiceRF, sUDP);
int GET_RF_UNQ(char *sRispostaRF, int socketn)
{
  ambaradan per prendere il codice dal server...
 strcpy(sRispostaRF, "          \0");
 strncpy(sRispostaRF, sRispostaUDP, 10);
 return 0;
}

strnghe in c puro...
Io non sono tanto bravo: il C me lo reimparo quello poche volte che mi
serve (tradotto: ne sono poco piu' di un cazzo).
BTW, qua:
iUDPResult = GET_RF_UNQ(sCodiceRF, sUDP);
non dovresti passare il puntatore alla stringa?
Cioe':
iUDPResult = GET_RF_UNQ(&sCodiceRF, sUDP);

 ha scritto nel messaggio
news:ehnnl0hqe8bkam50f...@4ax.com...

Teroicamente *sCodiceRF sarebbe la "stringa" e &CodiceRF referenzia il primo
carattere della stringa o giu' di li e sCodiceRF senza niente è l'indirizzo
del primo elemento della stringa, che casino....
/

 del primo elemento della stringa, che casino....
se si ha una definizione del tipo
char* sCodiceRF = "pippo";
- sCodiceRF e' la variabile di tipo char* che contiene l'indirizzo
  della prima delle locazioni di memoria contigue contenenti la
  sequenza di caratteri 'p''i''p''p''o''\0';
- *sCodiceRF e' il primo carattere delle stringa (ovvero 'p');
- &sCodiceRF e' l'indirizzo della variabile sCodiceRF.
HTH
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto nel messaggio
news:2c55419b4f471715a33...@mygate.mailgate.org...

Quindi in una funzione che deve restituire una stringa come vanno passati i
parametri?
/

 parametri?
????? La domanda per me non ha molto senso.
Tra input e output di una funzione puo' benissimo non esserci nessuna
correlazione: una funzione puo' restituire una stringa anche senza
prendere nessun parametro.
Dimmi cosa deve fare la funzione sulla stringa che deve restituire..
C:\>iao Angelo
P.S. Le altre risposte verranno date solo si iclc.


strcpy(sCodiceRF,  "          \0");
rischiosissimo. Se la stringa che vuoi copiare su sCodiceRF e' troppo
grossa rispetto alla sua grandezza, vai in overflow, e magari nemmeno
te ne accorgi (=malfunzionamenti strani).
la cosa migliore da fare e':
char *sCodiceRF;
sCodiceRF = (char *)malloc(sizeof("          \0"));
if (!sCodiceRF) {
	printf("Errore di allocazione\n");
	exit(0);
}
strcpy(sCodiceRF, "           \0");
Questa lezione di C e' gratis. Giusto per dimostrarti quello che ti
dicevo prima delle vacanze: che ti supero in tutto.
Se ne vuoi altre, a pagamento ovviamente, scrivimi all'email. Leggo
poco il NG.
spider

iUDPResult = GET_RF_UNQ(&sCodiceRF, sUDP);
Serve a passare alla funzione GET_RF_UNQ, come primo parametro,
l'indirizzo della variabile che contiene il puntatore alla stringa.
Ti faccio un esempio con gli int, che ci evita un ulteriore livello di
indirizzamento.
se ho
int *pointer;
int i;
pointer = &i;
allora *pointer == i
ma pointer di per se' sara' una variabile del tipo adatto
sull'architettura in oggetto (sugli intel x86 dovrebbe essere un
unsigned integer, a 32 bit - facciamo comunque finta che sia cosi').
pertanto &pointer != i
ma, d'altro canto, se io dichiaro un'ulteriore _variabile_
unsigned int buttha;
e poi faccio buttha = pointer;
allora avro' due bei warning al momento della compilazione, ma anche
che *buttha == *pointer == i
(manca qualche casting, in un senso e nell'altro. per esempio e' piu'
corretto srivere buttha = (unsigned int)pointer per la copia e,
addirittura essenziale, scrivere *(int *)buttha per il recupero del
valore, ma il concetto e' quello)
chiaro?
spider

 strcpy(sCodiceRF,  "          \0");
Ci sei.
Dov'e' che implementi questo codice? <beg>
-- 
Per non dimenticare:
http://snipurl.com/SdC_ed_il_vino

 Come ho scritto a Luther, le stringhe in C non esistono.
E annamo...scendi da sto' cazzo mentre fai cat /usr/include/strings.h
-- 
Aderisci anche tu al Peppiniello Fan Club!
s/a/u

E annamo...scendi da sto' cazzo mentre fai cat /usr/include/strings.h
Certe volte mi chiedo se replichi per inerzia, per un malcelato
masochismo, o se sei solo un deficiente.
Nel mentre, nella mia home fai cat ~/mysrc/include/bllist.h e poi
vieni a raccontarmi che in C esistono le bilinked list[1].
Quando hai fatto, dimmi: e' perche' non hai letto la parola "tipo"
scritta subito prima di "stringhe", dimostrando innegabilmente[2] di
non aver capito un'acca di quello che ho scritto, che ti sei prodotto
in questo tuo ridicolo post?
spider
[1] spiegazione d'obbligo per decerebrati: e' *evidente* che tu non
potrai fare alcun cat nella mia home. Il senso e' chiaro, in caso
superasse le tue facolta', troverai senz'altro qualcuno in grado di
aiutarti.
[2] e eternamente. Quote integrale
anti-X-mi-cago-addosso-di-google-news: yes.

chiaro?
d'accordo

 ha scritto nel messaggio
news:5l8pl0lr92vbfqo23...@4ax.com...

Comincio ad adorarvi.... pero' i miei problemi con le stringhe me li sto
risolvendo studiando a fondo i manuali vabии..
/

 poco il NG.
Ehm...
/

 Dov'e' che implementi questo codice? <beg>
Sono tutte variabili a lunghezza fissa, mai variabili ecco perchè le azzero
in quel modo...
/

 spider
C:\>iao Angelo



<zip>
Ti adoro....
/

Ehm...
Vabbe', se ti serve tu prova a scrivere, per il conto vediamo.
spider

C:\>iao Angelo
p.s. (da leggersi "psssst") qual e', senza apostrofo ;-)
spider

 spider
Un' arrampicata eccezionale spider, non mi potevo aspettare di peggio da
te...
/



Luther, probabilmente non hai capito un'acca di quelle che sono state
le repliche di Angelo, ne' le mie risposte. Questo ti esime dal
riconoscere una vera arrampicata da una immaginata perche' ai tuoi
occhi fa piacere cosi'.
Pero', fidati, non esistono arrampicate in cui si ammetta di aver
sbagliato, e quando e' stato giusto farlo, l'ho fatto.
spider
p.s. (da leggersi "psssst") spero tu non sia giunto a cotale
conclusione per via di quella battuta (con tanto di faccina - su IDL!)
sul qual e' senza apostrofo.

 p.s. (da leggersi "psssst") qual e', senza apostrofo ;-)
Io non ho preteso di dare lezioni di italiano... ;-)


 modificare  una stringa "literal" 
una stringa "costante" non "literal".
Sorry.


a pavoneggiarti. Hai tutto il mio rispetto.
Tutti sbagliati. Sei comico, ragazzo.
Al secondo post stai gia' confermando quello che avevo detto fin
dall'inizio, solo farcendolo di riferimenti a standard e casi
particolari ("il VC++ te lo lascia fare") solo per sfoggiare la tua
cultura. Cultura che nessuno ha messo in dubbio, ragazzo, tienilo
presente.
I suggerimenti che ho dato a Luther sono tutti corretti, lo hai
confermato tu, seppure "obfuscated".
spider

 confermato tu, seppure "obfuscated".
printf("%c", **luther);
a me non sembrava tanto corretto (e luther sembrava un tantino
perplesso con la storia dei **).
C:\>iao Angelo
[1] Notare la finesse :-)
P.S. Dimmi una cosa... ma il "ragazzo" dovrebbe servire a farmi
     diventare piu' bilioso?
     Se e' cosi' dimmelo che ti accontento :-)


 perplesso con la storia dei **).
Essi' in effetti, ma sai l'esperto "era" spider ehehehe
Senti sono ancora con quella stringa vuota de siBuff... che tristezza, ora
provo a interrogare ogni singola stringa che ci butto dentro con strncpy,
puo' essere che se una di quelle sia "fallata" mi comprometta anche il
resto?
Ciao
Luther

 resto?
Se ho capito bene, la risposta e' si.
C:\>iao Angelo
