コード例 #1
0
ファイル: WordList.cpp プロジェクト: georgiee/lip-sync-lpc
bool WordList_hasWord (WordList me, const wchar *word) {
	long p, d;
	int cf;
	if (wcslen (word) > 3333) return false;
	Longchar_genericizeW (word, buffer);
	if (! my length) my length = wcslen (my string);
	p = my length / 2, d = p / 2;
	while (d > 20) {
		p = gotoStart (me, p);
		cf = compare (buffer, my string + p);
		if (cf == 0) return true;
		if (cf < 0) p -= d; else p += d;
		d /= 2;
	}
	p = gotoStart (me, p);
	cf = compare (buffer, my string + p);
	if (cf == 0) return true;
	if (cf > 0) {
		for (;;) {
			p = gotoNext (me, p);
			if (p >= my length) return false;
			cf = compare (buffer, my string + p);
			if (cf == 0) return true;
			if (cf < 0) return false;
		}
	} else {
		for (;;) {
			p = gotoPrevious (me, p);
			if (p < 0) return false;
			cf = compare (buffer, my string + p);
			if (cf == 0) return true;
			if (cf > 0) return false;
		}
	}
	return false;   // should not occur
}
コード例 #2
0
ファイル: memory.cpp プロジェクト: Optiroc/bsnes-plus
void MemoryEditor::prevData() {
  gotoPrevious(QHexEdit::UsageRead | QHexEdit::UsageWrite);
}
コード例 #3
0
ファイル: memory.cpp プロジェクト: Optiroc/bsnes-plus
void MemoryEditor::prevUnknown() {
  gotoPrevious(0);
}
コード例 #4
0
ファイル: memory.cpp プロジェクト: Optiroc/bsnes-plus
void MemoryEditor::prevCode() {
  gotoPrevious(QHexEdit::UsageExec);
}