Neurochirurgie minim invazivă
"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv. Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice. www.neurohope.ro |
Token file to struct
Last Updated: Jan 26 2015 13:07, Started by
Davyid
, Jan 26 2015 00:49
·
0
#1
Posted 26 January 2015 - 00:49
Salutare, am și eu o mică problemă, nu-mi dau seama mai exact de ce îmi rămâne mereu ultima linie salvată în structură.
Fisierul contine: POP, IOAN CHIS, MIHAI .. #include <stdio.h> #include <stdlib.h> typedef struct { char *nume; char *prenume; }STUD; int main() { FILE *f=fopen("a.txt","r"); char x[100]; STUD *s=(STUD*)malloc(sizeof(STUD)); int i=0; char *token; while(fgets(x,100,f)!=NULL) { s[i].nume=malloc(sizeof(100)); s[i].prenume=malloc(sizeof(100)); token=strtok(x,","); s[i].nume=token; token=strtok(NULL,","); s[i].prenume=token; i++; } printf("%s",s[0].nume); fclose(f); return 0; } Mersi.. |
#2
Posted 26 January 2015 - 01:08
Nu prea inteleg la ce te referi prin "ramane mereu ultima linie salvata in structura", dar o observatie ar fi ca tu aloci memorie doar pentru un singur element de tip STUD.
|
#4
Posted 26 January 2015 - 07:40
In primul rand e musai sa corectezi ce ti-a semnalat mai sus @adrian93.
A doua observatie este ca: s[i].…=malloc(sizeof(100));nu prea are sens, si aloci mult mai putina memorie decat cred ca intentionezi (NU aloci 100 bytes…). Apoi:
Edited by sags, 26 January 2015 - 08:04. |
#5
Posted 26 January 2015 - 08:38
Quote s[i].nume=token; s[i].prenume=token; |
#6
Posted 26 January 2015 - 13:07
Sau poate vrea sa duplice string-urile respective.
Ce sunt acei "100"? De ce nu se dealoca memoria la final? Recomand studierea efectului strtok() asupra sirului x (chiar daca in acest caz nu se intampla nimic "rau"). |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users