示例#1
0
/* GenSent: Generate a single sentence using lat, returns length of sent */
int GenSent(int snum)
{
   NodeId n;
   int len = 0;
   
   if (trace&T_TOP)
      printf("Sentence %d:\n",snum);
   if (lnum && !quiet) printf("%d. ",snum);
   n = FindLatStart(lat);
   if (n->word != voc.nullWord)  {
      len++;
      if (!quiet) PrintWord(n);
   }
   while ((n = RandSucc(n)) != NULL) {
      if (n->word != voc.nullWord)  {
         len++;
         if (!quiet) PrintWord(n);
      }
   }
   if (!quiet) {
      printf("\n"); fflush(stdout);
   }
   return len;
}
示例#2
0
BOOL RunAllMemoryTests(uint32 *addr, int size)
{
	MemError error;

	if(DATA_MASK != 0xFFFFFFFF) {
		print("INFO: Tests will only consider bits 0x");
		PrintWord(DATA_MASK);
		print(" of 32-bit data bus.\r\n");
	}
	
	print("Testing writing of zeros . . . ");
	if(!TestWriteZeros32(addr, size, &error)) {
		ReportError(&error);
		return FALSE;
	}
	else print("OK\r\n");

	print("Testing writing of ones . . . ");
	if(!TestWriteOnes32(addr, size, &error)) {
		ReportError(&error);
		return FALSE;
	}
	else print("OK\r\n");

	print("Testing writing of address . . . ");
	if(!TestWriteAddress32(addr, size, &error)) {
		ReportError(&error);
		return FALSE;
	}
	else print("OK\r\n");
	
	print("Testing writing of address inverse . . . ");
	if(!TestWriteAddressInverse32(addr, size, &error)) {
		ReportError(&error);
		return FALSE;
	}
	else print("OK\r\n");

	print("Testing data bus pounding . . . ");
	if(!TestDataPounding32(addr, size, &error)) {
		ReportError(&error);
		return FALSE;
	}
	else print("OK\r\n");

	print("Testing address bus pounding . . . ");
	if(!TestAddressPounding32(addr, size, &error)) {
		ReportError(&error);
		return FALSE;
	}
	else print("OK\r\n");

	print("Testing walking ones on data bus . . . ");
	if(!TestWalkingOnesData32(addr, size, &error)) {
		ReportError(&error);
		return FALSE;
	}
	else print("OK\r\n");

	print("Testing walking ones on address bus . . . ");
	if(!TestWalkingOnesAddress32(addr, size, &error)) {
		ReportError(&error);
		return FALSE;
	}
	else print("OK\r\n");

	print("Testing writing of bytes . . . ");
	if(!TestByteWrite(addr, size, &error)) {
		ReportError(&error);
		return FALSE;
	}
	else print("OK\r\n");

	return TRUE;
}
示例#3
0
bool WordConsole::Show()
{
    WithTitleConsole(Root, Word).Show();

    bool found = Globals::Dict->GetWord(Word).Desc.size() != 0 || Globals::CurrentUser->GetWord(Word).Desc.size() != 0;
    auto related = Globals::Dict->GetRelated(Word, 20);

    if (!found) // no system or user desc
    {
        outs << "没有找到这个单词, 您可以添加释义或者尝试查询以下单词: " << endl;

        for (auto w : related)
        {
            outs << w << " ";
        }
        outs << endl;
        outs << string(80, '-') << endl;
    }
    else
    {
        auto &evalPtr = Globals::CurrentUser->WordEvaluator;
        bool haveFlags = false;

        if (evalPtr->IsCommon(Word))
        {
            outs << "*常见词*    ";
            haveFlags = true;
        }
        else
        {
            outs << "*生僻词*    ";
            haveFlags = true;
        }

        if (evalPtr->IsForgettable(Word))
        {
            outs << "*您容易忘记*    ";
            haveFlags = true;
        }

        if (evalPtr->IsKnown(Word))
        {
            outs << "*熟词*    ";
            haveFlags = true;
        }
        else
        {
            outs << "*生词*    ";
            haveFlags = true;
        }

        if (haveFlags)
        {
            outs << endl;
        }

        outs << string(80, '-') << endl;
    }

    PrintWord(outs, "系统", Globals::Dict->GetWord(Word));
    PrintWord(outs, "您添加的", Globals::CurrentUser->GetWord(Word));

    if (found)
    {
        outs << "易混淆单词: " << endl;

        for (auto w : related)
        {
            outs << w << " ";
        }
        outs << endl;
    }

    ShowSubComponents();
    DoButtons();

    return true;
}
示例#4
0
int main()
{
    PrintWord(3);
    PrintWord("hello world");
}