在C / C ++中将int转换为ASCII

时间:2014-05-15 01:32:26

标签: c++ opencv path ascii yaml

我有一个非常简单的问题,我被卡住了。基本上,我有一个Alphabet数据库,我想逐个访问每个字母。例如,要访问字母A的图像,我必须写 -

ReadImg["A"] >> Letter; 

我需要扫描所有字母,因此我将增加int x。问题出在ASCII转换中。当我以“(char)x”的形式放置一个字母时,编译器将“(char)x”视为(char)x而不是将其视为字母(例如“A”)。有人能指出可能的解决方案吗?

void ReadDatabase(Mat &Letter, int x = 65)
{
    cv::FileStorage ReadImg("Alphabet.yml", FileStorage::READ);
    ReadImg["(char)x"] >> Letter;
    ReadImg.release();
    cv::namedWindow("Letter");
    cv::imshow("Letter",Letter);
    cv::waitKey();
}

提前致谢

2 个答案:

答案 0 :(得分:0)

你可以试试这个:

ReadImg[string(1,(char)x)] >> Letter;

它会将您的变量x转换为相应的字符并将其转换为字符串..

答案 1 :(得分:0)

ReadImg[ cv::format("%c",x) ] >> Letter;