我确定以前曾经问过,但我找不到任何可以帮助我的东西.我有一个C语言的程序看起来像这样
function2(){
function1()
}
function1 (){
function2()
}
main () {
function1()
}
Run Code Online (Sandbox Code Playgroud)
它比这更复杂,但我正在使用递归.我无法在文件中安排该函数,以便每个函数只调用上面指定的函数.我一直在收到错误
main.c:193: error: conflicting types for 'function2'
main.c:127: error: previous implicit declaration of 'function2' was here
Run Code Online (Sandbox Code Playgroud)
我该如何避免这种情况?提前感谢您的建议和解答.
我在Android上写的游戏类似于谁想要成为百万富翁,我想知道存储问题和答案的最佳方式是什么.我希望至少有300-400个问题,并且每次更新都会增加约100个问题.现在我将它们存储在这样的静态类中:
public class Qs {
public static Question questions[][];
public static Question q1e1,q1e2,q1e3,q2e1,q2e2,q2e3,q3e1,q3e2,q3e3,q4e1,q4e2,q4e3;
public static void load(){
q1e1 = new Question("Question","Answer","wrong answer","wrong answer","wrong answer");
q1e2 = new Question("Question","Answer","wrong answer","wrong answer","wrong answer");
q1e3 = new Question("Question","Answer","wrong answer","wrong answer","wrong answer");
Question level1[] = new Question[]{q1e1,q1e2,q1e3};
Question level2[] = new Question[]{q2e1,q2e2,q2e3};
Question level3[] = new Question[]{q3e1,q3e2,q3e3};
Question level4[] = new Question[]{q4e1,q4e2,q4e3};
questions = new Question[][]{level1,level2,level3,level4};
}
Run Code Online (Sandbox Code Playgroud)
}
但是我真的不知道当我在这些文章中有数百个问题时会做什么.它们都会加载到内存中并且可能会使手机放慢速度吗?编辑和添加问题很好,不需要花哨的xml或任何东西,我只关心放慢手机速度(否则我的应用程序真的没有要求).感谢您的任何答案,评论和提示!
int x,y,m;
for(;;){
m=scanf("%d %d",&x,&y);
if (m!=2 || m==EOF){
break;
}
else{
printf("/%d/%d/\n",x,y);
}
}
if (feof ( stdin )){
printf("End of input\n");
}else if(m!=2){
printf("There was an error\n");
}
Run Code Online (Sandbox Code Playgroud)
在linux下ctrl + D表示输入结束,而对于windows ctrl + z应该可以做到这一点,但它不起作用.有任何想法吗?
我有一个程序应该模拟一个简单的文件系统,我想打印目录的结构,所以我重载了<<运算符,并调用了另一个在rectursion中通过我的结构的函数.它工作正常,但在输出中的某些行之前有一些奇怪的十六进制值.我操纵的方式有什么问题ostream吗?(我没有包含类定义,但它不重要)
谢谢大家,任何答案!
std::ostream& printTree(std::ostream& os, const CFileSystem::TDir* x, int nmbTabs)
{
int k;
const CFileSystem::TDir * nxt = x;
//cout << pocetTabu<<endl;
while(nxt){
os<<"--";
for(k=0;k<nmbTabs;k++){
os << '\t' ;
}
os<<"--";
os << nxt->m_Name << endl;
if(nxt->m_Sub){
os << printTree(os,nxt->m_Sub,nmbTabs+1);
}
nxt=nxt->m_Next;
}
return os;
}
std::ostream& operator <<(std::ostream& os, const CFileSystem& x)
{
os << "/" << endl;
os << printTree(os, x.m_Root,1);
return ( os );
}
Run Code Online (Sandbox Code Playgroud)