指向矢量<float>第一个字节的指针
Pointer to first byte of a vector<float>
XAudio2中指向XAUDIO_BUFFER
结构体音频缓冲区的指针定义为BYTE *pAudioData
。当我使用16位整数PCM时,我的程序是这样的:
void buildWaveBuffer(std::vector<unsigned char> &vec)
{
std::string lineString;
int lineInt;
unsigned char lowByte, highByte;
std::ifstream myfile("sineInt16");
if (myfile.is_open())
{
while(myfile.good())
{
std::getline(myfile,lineString,',');
lineInt = atoi(lineString.c_str());
highByte = (lineInt >> 8) & 0x00FF;
lowByte = lineInt & 0x00FF;
vec.push_back(lowByte);
vec.push_back(highByte);
}
myfile.close();
}
}
"sineInt16"
为。csv文件。由于向量在内存中是按顺序组织的,所以我只需执行pAudioData = &vec[0]
就可以了。如果我想将。csv格式更改为float
,该怎么办?我如何给一个指针的第一个字节的向量?我应该使用另一个容器像一个简单的字符数组吗?
我如何给一个指针的第一个字节的向量?
完全相同的方式,但我不确定它会做你所期望的。阅读对你的问题的评论
相关文章:
- 获取向量C++中第一个值和最后一个值的和
- 有没有一种"cleaner"的方法可以在指向基的指针向量中找到派生类的第一个实例?
- 从文件中读取多个字节,并将它们存储在C++中进行比较
- 当我在第一个循环中使用"auto"时,它工作正常,但是使用"int"它会给出错误,为什么?
- 我有两个类需要在同一 cpp 文件中相互引用,但第一个类无法识别第二个类类型的对象
- 为什么有时我输入一个整数,程序将第一个输入的数字打印成十进制数?
- 如何在创建自定义迭代器时获得 std::p air 的第一个和第二个?
- 如何实现 Front() 方法以返回模板化双向链表C++的第一个元素?
- 是否强制转换void**并将第一个字节设置为nullptr
- 检查 IP 第一个八位字节是否不以 127 / 224 或 255 开头
- std::memcmp 可以读取超过第一个差异的任何字节吗?
- 如何创建 std::vector of char/std::byte,其中第一个字节对齐到 16 个字节,但没有填充
- 更改s_addr的第一个字节
- 不能很好地与send()和recv()一起使用,短字符串的第一个字节丢失了.c++
- 从文件输出原始字节时,第一个字节已损坏
- C++ 将向量转换为<BYTE>第一个向量字节为 0 的字符串
- CryptDecrypt只解密第一个字节
- c++ fseek:是位置0或1的第一个字节
- 查找数组中给定索引的第一个和最后一个字节的地址
- 指向矢量<float>第一个字节的指针