字符串的填充与提取内容操作(sprintf,sscanf)

发布时间 2023-06-15 17:59:01作者: 中班小小石

  char  timeInfo[256];

  memset(timeInfo, 0, sizeof(timeInfo));

  sprintf(timeInfo, "%04d/%02d/%02d %02d:%02d:%02d ", year,mon,day, hour, min, sec);   

  1)sscanf("zhoue3456 ", "%4s", str); //取指定长度的字符串       

          printf("str=%s\n", str);   //str="zhou";

  2)sscanf("zhou456 hedf", "%[^ ]", str); //取到指定字符为止的字符串,取遇到空格为止字符串    

          printf("str=%s\n", str);  //str=zhou456;

  3)sscanf("654321abcdedfABCDEF", "%[1-9a-z]", str); //取仅包含指定字符集的字符串

          printf("str=%s\n", str);  //str=654321abcded,只取数字和小写字符

  4)sscanf("BCDEF123456abcdedf", "%[^a-z]", str); //取到指定字符集为止的字符串       

           printf("str=%s\n", str);  //  str=BCDEF123456, 取遇到大写字母为止的字符串

  5)int a,b,c;

          sscanf("2015.04.05", "%d.%d.%d", &a,&b,&c); //取需要的字符串   

          printf("a=%d,b=%d,c=%d",a,b,c);  //  a=2015,b=4,c=5