用fscanf()函数怎样将$GS_FKJ[0,2] = 54中[]里的0,2分别取出来

问题描述

用fscanf()函数怎样将$GS_FKJ[0,2] = 54中[]里的0,2分别取出来

并保存在两个Int型变量里??

求各位大神指点!!!万分感谢!!!!

解决方案

还是用字符查找来定位,然后取子字符/字符串的方法可靠一些。

解决方案二:

读取字符串,然后字符串查找,正则表达式匹配,这几种方法

解决方案三:

按行读出字符串,用sscanf处理。
%*[^[]指忽略[之前的字符串。

sscanf("$GS_FKJ[0,2] = 54", "%*[^[][%d,%d", &i, &j);

解决方案四:

int main(int argc, char *argv[])
{
int i, j;
FILE *fp = fopen("./in.data", "r");

    if(!fp) {
            printf("can't open filen");
            return -1;
    }

    while(!feof(fp)) {
            if (fscanf(fp, "%*[^[][%d,%d", &i, &j) > 0)
                    printf("%d, %dn", i, j);
    }

    fclose(fp);
    return 0;

}

解决方案五:

int main(int argc, char *argv[])
{
int i, j;
FILE *fp = fopen("./in.data", "r");

    if(!fp) {
            printf("can't open filen");
            return -1;
    }

    while(!feof(fp)) {
            if (fscanf(fp, "%*[^[][%d,%d", &i, &j) > 0)
                    printf("%d, %dn", i, j);
    }

    fclose(fp);
    return 0;

}

解决方案六:

fscanf()里的格式化字符串写为”$GS_FKJ[%d,%d]“,或者读入字符串,自己分析。

时间: 2024-10-24 17:41:59

用fscanf()函数怎样将$GS_FKJ[0,2] = 54中[]里的0,2分别取出来的相关文章

环信2.3.0的红包中的volley-1.0.19.jar与项目中的Bmob的Bmob SDK3.4.6.jar冲突

问题描述 开发环境android studio 解决方案 红包3.0 已经不再混淆三方库 如果使用了同一个三方库 可以去掉其中的一个解决方案二:请问怎么解决这个问题?解决方案三:https://github.com/YunzhanghuOpen/sdkdemoapp3.0_android/tree/sdk3.0用这个吧

mfc-MFC中fscanf函数怎么用,fscanf如何读取不定量的变量呢

问题描述 MFC中fscanf函数怎么用,fscanf如何读取不定量的变量呢 MFC中fscanf函数怎么用,fscanf如何读取不定量的变量呢?用数组接收怎么取地址? 解决方案 用循环呗.while (scanf(""%f"" &p) != EOF)p++; 解决方案二: 数组首地址就好,另外加上头文件

printf-代码如下 请问我函数里的打印长度为什么为0和main中的长度为10不一样

问题描述 代码如下 请问我函数里的打印长度为什么为0和main中的长度为10不一样 #include #include #include #include #define GET_ARRAY_LEN(array) (sizeof(array)/sizeof(array[0])) int ARRAY_ABS(double array[]) { printf("n%d",GET_ARRAY_LEN(array)); return 0; } int main() { double a[10]

c#-C#中取小数有效数字采用round函数,遇到0.499995就是0.49,而我需要0.50

问题描述 C#中取小数有效数字采用round函数,遇到0.499995就是0.49,而我需要0.50 如题.C#中取小数有效数字采用round函数,遇到0.499995就是0.49,而我需要0.50 解决方案 using System; public class Test { public static double myround(double d) { return (int)(d * 100 + 0.5) / 100.0; } public static void Main() { //

c-这个函数什么意思啊,第一个函数为什么都是赋值给UUT_date[0],后面加'0'又是什么意思

问题描述 这个函数什么意思啊,第一个函数为什么都是赋值给UUT_date[0],后面加'0'又是什么意思 void HEXtoarry(ulong ReadVlaue) { UUT_date[0]=ReadVlaue/100000000%10+'0'; UUT_date[0]=ReadVlaue/10000000%10+'0'; UUT_date[0]=ReadVlaue/1000000%10+'0'; UUT_date[0]=ReadVlaue/100000%10+'0'; UUT_date[

C语言中的fscanf()函数与vfscanf()函数使用_C 语言

C语言fscanf()函数:输入函数(比较常用)头文件: #include <stdio.h> 定义函数: int fscanf(FILE * stream, const char *format, ...); 函数说明:fscanf()会自参数stream 的文件流中读取字符串, 再根据参数format 字符串来转换并格式化数据.格式转换形式请参考scanf(). 转换后的结构存于对应的参数内. 返回值:成功则返回参数数目, 失败则返回-1, 错误原因存于errno 中. 范例 #inclu

php使用gettimeofday函数返回当前时间并存放在关联数组里

 这篇文章主要介绍了php使用gettimeofday函数返回当前时间并存放在关联数组里的方法,涉及php中gettimeofday函数的使用技巧,需要的朋友可以参考下     本文实例讲述了php使用gettimeofday函数返回当前时间并存放在关联数组里的方法.分享给大家供大家参考.具体分析如下: 英文官方描述如下: Key Description sec Seconds since midnight before January 1, 1970 usec Microseconds sin

vc6 0 extern 问题2个-vc6.0 中extern使用时遇到的2个疑问,还望诸位帮忙看下,多谢

问题描述 vc6.0 中extern使用时遇到的2个疑问,还望诸位帮忙看下,多谢 我在文件1CTestHello.cpp 声明了 extern void delete_string(char a[],char b[],char standard); 再调用文件2 file2.c中的delete_string(a,b,Standard);函数: 发现2个问题: 问题1:用extern实验发现必须用include,但查找资料,没有说这两个有必然关联.请问到底有没有必然关联?下面是实验: 如果文件1中

c# 4 0-C#调用VC++6.0的dll中问题

问题描述 C#调用VC++6.0的dll中问题 这是vc++中头文件#define GTDLL_API extern ""C"" __declspec(dllimport) short __stdcall我在C#中引用[DllImport(""GT400.dll"")] private extern static short GT_SetPos(int pos); 调用函数 private void SMotion() //S