从c中的结构数组创建一个字符串

时间:2011-05-20 15:28:17

标签: c arrays string structure

我是c编程的新手,我很难搞清楚如何从结构数组创建一个字符串。我有一堆数据点,我想在程序中。我创建了一个结构数组,现在我需要它们从中创建一个字符串。这是我到目前为止的代码。

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

int main()
{ 
 int i=0;


      struct wmm
   {
    float n;
    float m;
    float gnm;
    float hnm;
    float dgnm;
    float dhnm;
   }  book[3]= {{1, 0,  -29496.6,       0.0,       11.6,       0.0},
  {1, 1,   -1586.3,    4944.4,       16.5,     -25.9},
  {2, 0,   -2396.6,       0.0,      -12.1,       0.0},
  {2, 1,    3026.1,   -2707.7,       -4.4,     -22.5}};

现在我想创建一个名为c_string的字符串,并能够使用此函数:

的sscanf(c_str, “%d%d%LF%LF%LF%LF”,&安培; N,&安培; M,&安培; GNM,&安培; HNM,&安培; dgnm,&安培; dhnm);

并使用数据点列表进行计算。

谢谢

1 个答案:

答案 0 :(得分:3)

您可能希望使用snprintf()执行格式化字符串生成,并使用malloc()创建要写入的字符数组。请注意,您可能需要仔细考虑需要字符数组的大小。