diff options
| -rw-r--r-- | example.cc | 25 | 
1 files changed, 14 insertions, 11 deletions
@@ -17,15 +17,18 @@ std::string get(const std::string& path, std::size_t offset, std::size_t length)  	return result;  } -int main() { -	// Get location of _Accession_ -	const std::string line = dictzip::get_line_starting_with("gcide.index", "Accession"); - -	// Decode location of _Accession_ -	//     `gcide.index[1089]: "Accession	8Aw	Wt" -	const std::size_t offset = dictzip::base64_decode(dictzip::get_encoded_offset(line)); -	const std::size_t length = dictzip::base64_decode(dictzip::get_encoded_length(line)); - -	// Print the GCIDE definition of _Accession_ -	std::cout << get("gcide.dict.dz", offset, length) << std::endl; +int main(int argc, char** argv) { +	if ( argc != 2 ) { +		std::cerr << "Empty query." << std::endl; +	} else { +		// Get index entry of requested word definition +		const std::string line = dictzip::get_line_starting_with("gcide.index", argv[1]); + +		// Decode location in compressed archive +		const std::size_t offset = dictzip::base64_decode(dictzip::get_encoded_offset(line)); +		const std::size_t length = dictzip::base64_decode(dictzip::get_encoded_length(line)); + +		// Print the GCIDE definition of _Accession_ +		std::cout << get("gcide.dict.dz", offset, length) << std::endl; +	}  }  | 
