从主函数访问变量
Access variable from main function
我想访问loadconfig函数中的一个值,但总是出错:
请求"LoadConfig"中的成员"a",该成员属于非类类型"int()"
string trainData, testData, simName;
int b, i;
int LoadConfig()
{
int a;
ifstream fin("kddcup.txt");
while(getline(fin,trainData))
{
// do whatever to the string "line"
// cout << i + 1 << " "<< trainData << endl;
char *pcg = strdup(trainData.c_str());
//pcg=(char *)malloc(42);
trainData = strtok(pcg,",");
i=1;
while (pcg != NULL)
{
int tint=atoi(pcg);
int tmp[43];
//printf ("%s",pcg);
tmp[i]=tint;
pcg = strtok (NULL, ",");
//printf("value = %d n",tmp[i]);
if (i==5)
{
a = tmp[i];
printf("value a= %d n",a); //access this a
}
else if(i==6)
{
b=tmp[i];
//printf("nilai b = %d n",b);
}
i++;
}//while pcg
}
// getline(fin, trainData);
}
int main()
{
int r;
LoadConfig();
// I WANT access from here
LoadConfig.a = new LoadConfig();
printf("output fungsi main = %d ",r);
}
实现这一点的最简单方法是从函数返回a
int LoadConfig()
{
int a;
...
return a;
}
int main()
{ int r;
r = LoadConfig();
printf("output fungsi main = %d ",r);
}
如果您想返回多个int
,那么一种方法是将所有要返回的内容封装到class
或struct
中,然后返回。
相关文章:
- 从不同C++类的成员变量访问成员函数
- 在主函数中C++私有变量访问
- 互锁变量访问(在布尔值上)和 std::atomic_flag 之间的区别
- C++中的变量访问内联函数
- 无法使用子类变量访问超类公共成员
- 优化成员变量访问
- Ifstream:打开可使用变量访问的文件
- 使用'this->'成员变量访问的性能
- 从成员变量访问静态 constexpr 成员,GCC 错误?
- TLS变量访问的结果未缓存
- 通过const成员变量访问内联函数
- 获取通过环境变量访问的文件的位置
- 静态变量访问
- 从函数变量访问结构变量的成员
- 从另一个变量访问变量
- 使用变量访问结构中的任何数据
- 如何使用另一个变量访问对象的变量/方法
- 使用用户变量访问结构的成员?C++
- 我需要通过基类静态变量访问派生类成员
- 如何将一个文件中存在的全局常量变量访问到另一个文件