nefunguje sscanf()

Michal Kubecek kubecek na karlin.mff.cuni.cz
Středa Únor 25 11:15:05 CET 1998


> void main(void)
> {
> 	int	hodnota;
> 	char	jmeno[200];
> 	char	buf[]={"Nazev hodnoty = 21\n"};
> 	
> 	sscanf(buf,"%[^=]s : %d\n",jmeno,&hodnota);
                           ^tady by melo byt '='

> 	printf("%s : %d\n",jmeno,hodnota);
> }

> a jako vystup bych ocekaval:
> Nazev hodnoty  : 21
> 
> ale ono mi to pise:
> Nazev hodnoty  : 0

Je to logicke, kdyz to takhle napisete, tak sscanf vrati
jednicku, coz znamena, ze priradil jen jednu hodnotu.
Takze v 'hodnota' zustane to, co tam bylo predtim.

                                           Michal Kubecek


Další informace o konferenci Linux