Saltar al foro
¿Problemas con tu P...
 
Avisos
Vaciar todo

¿Problemas con tu Pc? Entra!

385 Mensajes
93 Usuarios
0 Reacciones
51.5 K Visualizaciones
BenCampell
Registrado: 03.03.2010
Oldschool Grinder

Hola Beovvulf, primero de todo felicitarte por este apartado que estas ayudando a mucha gente. Es muy bueno que haya gente como tu.

A mi me gustaria que me ayudaras con un problema de progamacion en C.

Como hago para leer un archivo .csv del estilo:

1,0,1
1,10,2
1,3,2
etc

y a medida que vaya leyendo lo guarde en la variable que toque de un struct??


Responder
Citar
_Anonymous_ Autor del tema
_Anonymous_

Los ficheros .CSV son un tipo de documento para representar datos en forma de tabla. Normalmente se abre en forma de hoja de cálculo. Que es lo que deseas hacer?


Responder
Citar

acabo de abrir el windos update y voy a hacer un update completo.
Creo que no tengo SP1

drivere instalados... los unicos que instale fueron los que vienen en el cd de la placa ( mi pc es nuevo tiene 1 año) y es cuando instale yo el windows y los drivere que trae el cd.
Desde entonce no instale otro driver ...por lo que yo sepa ...solamente el de la camera web y esto fue hace 5 meses mas o menos (el problema empeso hace unas semanas)

Las RAM.. tengo 2 placas RAM co 4 GB cada una DDR3 1333MHZ marca Kingston que dan garantia de por vida (dificil que se rompan en mi opinion)

are el test de la ram en un momento y ya te lo dire .

Gracias de todas formas es un gran aporte a la comunidad lo que tu haces y sobre todo lo mas importante inspiras a otros a ayudar cuando pueden


Responder
Citar
BenCampell
Registrado: 03.03.2010
Oldschool Grinder

sisi lo sé. Estoy haciendo un programa que debe tener una funcion que sea leer fichero (ese fichero es un excel con 3 valores por fila separados por coma, como en el ejemplo que te he puesto)

La funcion ademas debe, mientras va leyendo, guardar el primer numero de cada fila en una variable que esta dentro de una estructura en el programa, la segunda en otra y la tercera en otra (porque luego tendre que hacer mas cosas con esas variables).

se entiende?


Responder
Citar
_Anonymous_ Autor del tema
_Anonymous_

original de thebestman24
acabo de abrir el windos update y voy a hacer un update completo.
Creo que no tengo SP1

drivere instalados... los unicos que instale fueron los que vienen en el cd de la placa ( mi pc es nuevo tiene 1 año) y es cuando instale yo el windows y los drivere que trae el cd.
Desde entonce no instale otro driver ...por lo que yo sepa ...solamente el de la camera web y esto fue hace 5 meses mas o menos (el problema empeso hace unas semanas)

Las RAM.. tengo 2 placas RAM co 4 GB cada una DDR3 1333MHZ marca Kingston que dan garantia de por vida (dificil que se rompan en mi opinion)

are el test de la ram en un momento y ya te lo dire .

Gracias de todas formas es un gran aporte a la comunidad lo que tu haces y sobre todo lo mas importante inspiras a otros a ayudar cuando pueden

De nada amigo. Haz el memtest, y si hay errores apuntalos. Luego actualiza al SP1, ya que se corrigen muuuchos errores.

PD: No es que la ram se rompa, si no que siempre hay un margen de error en la fabricación. Algún contacto dañado en la ram, puede generar muchos problemas. Luego vemos si estás haciendo OC, por que no te lo recomiendo en una placa Intel, que creo es la que tienes.

Saludos, vuelvo más tarde que tengo curro :3


Responder
Citar
_Anonymous_ Autor del tema
_Anonymous_

original de BenCampell
sisi lo sé. Estoy haciendo un programa que debe tener una funcion que sea leer fichero (ese fichero es un excel con 3 valores por fila separados por coma, como en el ejemplo que te he puesto)

La funcion ademas debe, mientras va leyendo, guardar el primer numero de cada fila en una variable que esta dentro de una estructura en el programa, la segunda en otra y la tercera en otra (porque luego tendre que hacer mas cosas con esas variables).

se entiende?

Cuando vuelva lo vemos, tengo que ir al curro :3

Saludos!


Responder
Citar
BenCampell
Registrado: 03.03.2010
Oldschool Grinder

ok! gracias y no trabajes mucho, jeje


Responder
Citar
_Anonymous_ Autor del tema
_Anonymous_

Bueno me voy que me hago tarde. Antes, te dejo unos comandos a ver si es mas o menos lo que quieres:

FILE *p;
dato celda;
p=fopen("miarchivo.dat","wb"); Si le colocas ab en vez de wb abre un archivo y coloca el puntero en el final del mismo esto para añadir elementos si en vez de wb utilizas rb esto lo abriria de solo lectura.
fwrite(&celda,sizeof(celda),1,p); guarda una celda en el archivo.
fread(&celda,sizeof(celda),1,p); lee el primer registro de un archivo y lo coloca en la direccion de memoria de celda
fseek(p,indice*sizeof(celda),SEEK_SET); este comando posiciona el puntero fiele en un registro cualquiera;
fclose(p); cierra el puntero file;

con stdio.h

Salu2.


Responder
Citar
_Anonymous_ Autor del tema
_Anonymous_

Post repetido xD


Responder
Citar
_Anonymous_ Autor del tema
_Anonymous_
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define PARSETHIS "[$2] [$2] [$3] [$4] [$300] [$030]"

typedef struct acumstrings
{
    char **ptr;
    size_t count;
} acumstrings;

acumstrings acum;

inline const char* getTokenIndex(const char *str, long *Index)
{
    if (!str) return NULL;
    char *ptr = strstr(str, "[$");
    char *end = NULL;

    if (ptr) {
        ptr += strlen("[$");
        (*Index) = strtol(ptr, &end, 10);
    }

    return ptr;
}

inline char* replace(const char *str, const char *find, const char *rep)
{
    char *ret = NULL;
    size_t strOln;
    size_t strFln;
    size_t strRln;
    const char *end[2];
    size_t sizeL;
    size_t sizeR;


    if (!str) return NULL;

    strOln = strlen(str);

    if (!find || (end[0] = strstr(str, find)) == NULL) {
        ret = (char*)malloc(strOln + 1);
        memcpy(ret, str, strOln + 1);
        return ret;
    }

    strRln = strlen(rep);
    strFln = strlen(find);

    end[1] = (char*)((size_t)end[0] + strFln);

    sizeL = (size_t)end[0] - (size_t)str;
    sizeR = ((size_t)str + strOln) - (size_t)end[1];

    ret = (char*)malloc(sizeL + strRln + sizeR + 1);

    memcpy(ret, str, sizeL);
    memcpy((void*)((int)ret + sizeL), rep, strRln);
    memcpy((void*)((int)ret + sizeL + strRln), end[1], sizeR);

    ret[sizeL + strRln + sizeR] = '\0';

    return ret;
}

int main ()
{
    FILE* file;
    size_t ret;
    char* strLast = NULL;
    char* strNew = NULL;
    char* strNewFind = NULL;
    char strToken[20];
    long index;

    file = fopen("C:\\a.txt", "rb+");

    //  Obtenemos cada palabra.
    while (!feof(file))
    {
        acum.ptr = (char**)realloc(acum.ptr, (acum.count + 1) * sizeof(char**));
        acum.ptr[acum.count] = (char*)calloc(256, 1);
        ret = fscanf(file, "%s", acum.ptr[acum.count]);
        puts(acum.ptr[acum.count]);
        ++acum.count;
    }

    fclose(file);

    strNew = (char*)malloc(strlen(PARSETHIS) + 1);
    strcpy(strNew, PARSETHIS);
    strNewFind = strNew;

    //  reemplazamos cada token por cada una de las palabras respectivas.
    while(strNewFind = getTokenIndex(strNewFind, &index))
    {
        sprintf(strToken, "[%$%d]\0", index);
        if (acum.count > index) {
            strLast = strNew;
            strNew = replace(strLast, strToken, acum.ptr[index - 1]);
            free(strLast);
            strNewFind = strNew;
        } else {
            ++strNewFind;
        }
    }

    while(acum.count--)
        free(acum.ptr[acum.count]);
    free(acum.ptr);

    puts(strNew);

    free(strNew);

    getchar();

    return 0;
}

Este es un ejemplo de parseo de un archivo .csv

Allí puedes encontrar algunas líneas que te ayudarán.

Saludos y byeeee


Responder
Citar
NorrisRules
Registrado: 23.02.2012
PokerStrategist

original de Beovvulf

original de NorrisRules
Bro que tal :D, mira tengo un problema con el chrome o con mi pc no lo se la cuestion es q las imagenes del server imgur no las puedo ver, probe con el internet explorer y tampoco nada de nada no sabes cual puede ser la causa?
Saludos desde Chiclayo :D

Hola bro, que tal. Dime, no puedes ver imágenes sólo de ese server?

De otras webs si puedes ver las imágenes? Intenta recargar la web, presionando F5.

Descarga la siguiente aplicacion: Descarga Aquí

Una vez que instalas, lo ejecutas. Verás una pestaña que dice 'Mantenimiento en 1 clic', dentro de esa pestaña, dale a 'Ver resultados'. Empezará a analizar el equipo en busca de errores, cuando acabe dale a 'Reparar'.

Hacer este procedimiento con toda aplicación cerrada. Luego reinicia el equipo y vuelve a imgur, verifica que se haya solucionado el problema.

Saludos.

Bro hice todo esto y nada de nada q raro no?


Responder
Citar
_Anonymous_ Autor del tema
_Anonymous_

Quizás sea problema de tu navegador.

Instala mejor Firefox, es seguro, estable y rápido.

Descarga Firefox Aquí

No desinstales Glary, cada 2 días haz el mantenimiento 1 clic, o todos los días antes de apagar el ordenador(antes de dormir).

Saludos.


Responder
Citar
NorrisRules
Registrado: 23.02.2012
PokerStrategist

original de Beovvulf
Quizás sea problema de tu navegador.

Instala mejor Firefox, es seguro, estable y rápido.

Descarga Firefox Aquí

No desinstales Glary, cada 2 días haz el mantenimiento 1 clic, o todos los días antes de apagar el ordenador(antes de dormir).

Saludos.

ni siquiera con el firefox se me soluciona tmrrrrrrrrrr :fuuu:


Responder
Citar
BenCampell
Registrado: 03.03.2010
Oldschool Grinder

perdona Beovvulf pero es que soy muy malo para programar. Te copio el codigo i me cuentas. A ver yo tengo lo siguiente.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define MOSTRES 100
#define NUM_SENSORS 100
#define MOTES_CARRER 25

struct sensor {
unsigned long int temps[MOSTRES];
int ocupat[MOSTRES];
int dada_valida[MOSTRES];
float mitja_ocupacio;
};

struct carrer {
char nom_carrer[30];
int num_motes;
int motes_carrer[MOTES_CARRER];
};

/*
Programa: Pràctica Exàmen (Sensors)
Autor: Eduard Borrega
*/

int llegirFitxerSensors(struct sensors *u, char* fitxer){

FILE *pt;
int cont=0;
unsigned int x,y,z;

if(( pt = fopen(fitxer,"r")) == NULL)
printf("No s'ha pogut obrir el fitxer\n");
else{
while( !feof(pt)){

for(cont=0;cont< NUM_SENSORS;cont++){

fscanf(pt, "%u,%u,%u", &x, &y, &z);

printf("\nHi ha %d sensors\n",cont);
}
fclose(pt);
system("PAUSE");
return 0;

}
}
}

int main(){ //Programa principal

int cont=0; //Declaració de variables
int bucle=1;
char opcio,*fitxer="Infosens.csv";
struct sensor sensors[NUM_SENSORS];
struct carrer carrers[20];

do{
printf("\n \n\t\t\t\tMENU SENSORS\n\n");
printf("\n1 - Llegir fitxer de dades");
printf("\n2 - Calcular mitjana d'ocupacio d'un sensor");
printf("\n3 - Calcular percentatge d'ocupacio d'un carrer en un moment donat");
printf("\n4 - Calcular percentatge d'ocupacio d'un sensor en un interval de temps donat");
printf("\n5 - Sortir del programa\n\n");
scanf(" %c",&opcio); fflush(stdin); //fflush -> neteja el búffer del teclat per a que nomes llegeixi
//el primer caràcter introduït i en descarti els altres

switch(opcio){
case '1':
printf("\n1 - Has triat:\n\nLlegir fitxer de dades\n");

//llamar funcion leer datos
//int llegirFitxerSensors(struct sensors *u, char* nom_fitxer);

break;
case '2':
printf("\n2 - Has triat:\n\nCalcular mitjana ocupacio sensor\n");

//llamar funcion hacer media ocupacion mota (No esta hecha)
//float calcular_mitja_ocupacio_mota(struct sensor *p_sensor);
break;
case '3':
printf("\n3 - Has triat:\n\nCalcular percentatge d'ocupacio d'un carrer en un moment donat\n");

//llamar funcion porcentage ocupacion en un momento dado (No esta hecha)
//float percentatge_ocupacio_carrer_instant(struct carrer *c,unsigned long int temps);
break;
case '4':
printf("\n4 - Has triat:\n\nCalcular percentatge d'ocupacio d'un sensor en un interval de temps donat\n");

//llamar funcio porcentage ocupación de un sensor en un intervalo de tiempo dado (No esta hecha)
//float percentatge_ocupacio_carrer_interval(struct sensor *p_sensor,unsigned long int temps_inici,unsigned long int temps_final);
break;
case '5':
printf("\n5 - Has triat:\n\nSortir del programa\n");
bucle=0; printf("\n\t\t\t\tFi del programa, ADEU\n\n");
break;

default: printf("\nSi us plau, introdueix una opcio valida");
break;

}
}while(bucle!=0);

system("PAUSE");
return 0;
}


Responder
Citar
BenCampell
Registrado: 03.03.2010
Oldschool Grinder

la unica funcion que de momento hay deberia leer el archivo .csv i guardar los valores en las variables correspondientes.


Responder
Citar
FUUUUKKya
Registrado: 09.11.2012
Poker Player

original de Beovvulf
FUUUUUKya, que tal. Te comento, he recibido algunos emails con casos como el tuyo, el recovery supuestamente te regresa al estado default, es decir de fábrica, como vino.

El error que te sale, es por que por alguna razón, se ha dañado el sistema, dañandose el tipo de dato del hdd, que es NFTS, que es el standar.

Acá la salida que veo es un formateo con un CD de windows o linux.

Si no sabes como se hace, agregame al skype y lo hacemos en media hora.

Saludos.

Skype: m1ckeygm

hey!! muchas gracias por la respuesta....te cuento

consegui los cds de rescate 3 dvd para ser exactos....y nada al 2º se jodio y ya no pude hacer nada...

Lo siguiente....consegui un Win xp sp3 32 bits

Lo inserte fue bien y dio error....entre en la bios cambie algo de AHCI y lo puse en IDE XD.....el caso es que al volverlo intentar funciono

Formatee c: e instale el nuevo SO

todo bien

inicio sesion y empiezo a bajar programas....primero avast.....luego me doy cuenta de que no va el sonido....entro en adm de dispositivos y me doy cuenta de que me faltan un monto de drivers...y nada busco en internet y encuentro EASYDRIVER

Lo utilizo y me da como unos 20 drivers obsoletos y 9 faltantes.....

empiezo a descargarlos poco a poco e instalarlos...manualmente..es decir......adm de dispositivos y uno a uno dandole en actualizar controlador...seleccionandolo de donde lo habia descargao......en principio fue bien...luego uno de eios no me deja actualizarlo.....luego bajo uno que debia ser controlador de video o algo asi......y nada lo instalo....bien.......pero al reiniciar...se ve la pantalla de XP....y luego pantalla negra inicia windows y todo pero nose ve......y en el monitor pone revisar cable.....

a todo esto llevo 5 dias intentando arreglarlo....el caso es que entro en opciones avanzadas de arranque.....pulsando f8 al iniciar....y eligo habilitar modo VGA.....y BUALA!! inicia bien y se ve la imagen....pero en 8 bits.....y 640x480.....y si lo intento cambiar seva la imagen denuevo y tengo que volver a iniciar el modo VGA

intente revertir el controlador pero no me deja.......pero el problema es que esta bien es el que necesito segun EASYDRIVER

Harto de todo decido probar modo a pruebade fallos.....y bien funciona.....y coji y restaura sistema aun punto anterior.......

y nada ahora estoy con XP sin bastantes controladores.....deseando tenerlo bien ya de una vez......

Pero no se que hacer ya tengo el culo cuadrado de estar sentado :(

losiento por el tocho este.....estoy intentando agregarte a skype pero no te encuentro y en la comunidad ya te mande el roio

ojala te encuentre algun dia y puedas echarme un cable

estoy realmente desesperado

Gracias por tu tiempo

un saludo!


Responder
Citar
iruxelc
Registrado: 31.10.2008
Elite Grinder

hola

te he agregado a skype para una cosilla!!

Gracias machine!


Responder
Citar
porqueno1
Registrado: 25.05.2009
Oldschool Grinder

Hola buenas a todos.

He comprado un equipo nuevo y desde el primer dia tira pantallazos azules...Donde lo he comprado me dijeron que actualizase todos los drivers y al ver que seguian me dijeron que podia restaurar los valores por defecto en la bios pero nada.

El equipo en cuestion es este:
http://www.ebay.es/itm/ws/eBayISAPI.dll?ViewItem&item=120784987063&ssPageName=ADME:X:RTQ:ES:1123

Le han añadido 4gb de memoria RAM por lo que pienso que el error debe de estar relacionado con esto.
He hecho lo que le recomiendas a un compañero de bajar bluescreen y el .txt que me da es este:

==================================================
Archivo de volcado: 011213-15631-01.dmp
Hora del fallo : 12/01/2013 18:36:07
Cadena de comprobación de error:
Código de comprobación de error: 0x00000109
Parámetro 1 : a3a039d8`9c20a7f2
Parámetro 2 : b3b7465e`ee9e7748
Parámetro 3 : fffff800`03c00e44
Parámetro 4 : 00000000`00000001
Causado por controlador: hal.dll
Causado por dirección: hal.dll+1be44
Descripción :
Nombre :
Companía :
Versión :
Proceso : x64
Crash Address : ntoskrnl.exe+705c0
Stack Address 1 :
Stack Address 2 :
Stack Address 3 :
Computer Name :
Full Path : C:\Windows\Minidump\011213-15631-01.dmp
Processors Count : 4
Major Version : 15
Minor Version : 7600
Dump File Size : 308.200
==================================================

==================================================
Archivo de volcado: 011213-19406-01.dmp
Hora del fallo : 12/01/2013 18:14:12
Cadena de comprobación de error: SYSTEM_SERVICE_EXCEPTION
Código de comprobación de error: 0x0000003b
Parámetro 1 : 00000000`c0000005
Parámetro 2 : fffff800`037107d5
Parámetro 3 : fffff880`076c0ca0
Parámetro 4 : 00000000`00000000
Causado por controlador: USBPORT.SYS
Causado por dirección: USBPORT.SYS+5f79
Descripción :
Nombre :
Companía :
Versión :
Proceso : x64
Crash Address : ntoskrnl.exe+705c0
Stack Address 1 :
Stack Address 2 :
Stack Address 3 :
Computer Name :
Full Path : C:\Windows\Minidump\011213-19406-01.dmp
Processors Count : 4
Major Version : 15
Minor Version : 7600
Dump File Size : 308.200
==================================================

==================================================
Archivo de volcado: 011213-22635-01.dmp
Hora del fallo : 12/01/2013 0:25:07
Cadena de comprobación de error: SYSTEM_SERVICE_EXCEPTION
Código de comprobación de error: 0x0000003b
Parámetro 1 : 00000000`c0000005
Parámetro 2 : fffff800`037087d5
Parámetro 3 : fffff880`06f4dca0
Parámetro 4 : 00000000`00000000
Causado por controlador: ntoskrnl.exe
Causado por dirección: ntoskrnl.exe+705c0
Descripción : NT Kernel & System
Nombre : Microsoft® Windows® Operating System
Companía : Microsoft Corporation
Versión : 6.1.7600.17118 (win7_gdr.120830-0334)
Proceso : x64
Crash Address : ntoskrnl.exe+705c0
Stack Address 1 :
Stack Address 2 :
Stack Address 3 :
Computer Name :
Full Path : C:\Windows\Minidump\011213-22635-01.dmp
Processors Count : 4
Major Version : 15
Minor Version : 7600
Dump File Size : 312.320
==================================================

Las memorias son Kingston DDR de 4gb.

Se te ocurre alguna solución o directamente lo devuelvo?
GRACIAS


Responder
Citar
SILVESTREP
Registrado: 03.04.2010
PokerStrategist

Hola Beovvulf. Que buen aporte para la comunidad. A ver si me puedes echar una manito. Le he instalado una tarjeta gráfica a mi PC para usar 2 monitores. El problema es que de un tiempo para acá el PC no me reconoce la graphic card, o no sé que ha pasado, pero no me funciona ninguno de sus puertos HDMI y VGA. Al principio apagaba el PC, desconectaba-conectaba los monitores y los reconocía otra vez. Ahora, algunas veces al encender el PC con el monitor conectado al puerto original tampoco me lo reconoce, el monitor se queda en "modo ahorro de energía", entonces aplico el mismo procedimiento anterior, en ocasiones tengo que hacerlo varias veces :fuuu:
Si me puedes dar una manito en algo estaría muuuuy agradecido :roto2:
Salu2 y éxitos :f_cry: :f_confused: :fdrink


Responder
Citar
GumetDaurat
Registrado: 10.11.2011
Oldschool Grinder

Hola te comento mi problema..

En noviembre tuve problemas con mi PC, ya que mientras estaba trabajando con el de repente se quedaba congelado y empezaba a hacer ruidos raros. Después de esto vinieron pantallazos azules y demás y lo llevé a una tienda y me dijeron que el problema era del disco duro que posiblemente estuviera jodido. Después de esto cambié el disco duro por uno que tengo en un disco multimedia y hasta ahora ha funcionado bien.

Hará cuestión de una semana, noto que el PC empieza a tener micro-congeladas, tales como que a veces al escribir por Skype se queda como pensando y no puedo interactuar con el programa durante alomejor 10 segundos y también me pasa cuando abro programas que consumen aparentemente mas memoria, sobretodo ultimamente cuando abro Pokerstars, HM2 y TN, se realentiza de una manera increible hasta el punto de que en ocasiones se queda congelada toda la pantalla y no puedo interactuar con el PC y debo reiniciarlo. Justamente, las veces que lo reinicio (si no lo apago del todo) después de que salga la típica imagen de la placa madre me aparece una pantalla en negro diciéndome que no se ha reconocido ningún dispositivo para el arranque (imagino que sera el disco duro..)

Dejo una captura de las características de mi PC y a ver si me pudieras sugerir algun programa para testear el PC y averiguar cual es su problema

Gracias, espero haberme explicado bien


Responder
Citar