草庐IT

char_sequence

全部标签

c++ - Visual Studio 2010 Arduino cpp 错误 : argument of type "char *" is incompatible with parameter of type "LPCWSTR"

我正在尝试设置一个arduinouno用于与visualstudio2010中的C++程序进行串行端口通信。我正在使用此处找到的代码:http://playground.arduino.cc/Interfacing/CPPWindows不幸的是,.cpp文件在第9行为变量“portName”提供了以下消息:错误:“char*”类型的参数与“LPCWSTR”类型的参数不兼容我不明白这个错误消息,并尝试了一些不同的方法来修复它。任何帮助将不胜感激! 最佳答案 鉴于您问题中的代码链接,问题似乎出在这里:Serial::Serial(cha

c++ - 如何访问 integer_sequence 的第 n 个值?

这个问题在这里已经有了答案:templateparameterpacksaccessNthtypeandNthelement(5个回答)2年前关闭。我想知道如何访问std::integer_sequence的第n个值.例如给定一个类型usingfoo=std::integer_sequence;我想要类似的东西autoi=get();//i=4标准库中有什么东西可以做到这一点吗?如果不是,如果我希望它在C++14(而不是C++17)中工作,我是否需要求助于迭代解决方案? 最佳答案 据我所知,没有这样的内置方法,但您可以自己用几行简洁

C++ map::find char * 与 char []

我正在使用C++map在我的程序中实现字典。我的函数获取一个结构作为参数,并且应该返回基于structure.name成员的关联值,该成员是charnamed[32]。以下代码演示了我的问题:mapmyMap;myMap.insert(pair("test","myTest"));char*p="test";charbuf[5]={'\0'};strcpy(buf,"test");coutsecondsecondsecond我不确定为什么第三种情况不起作用,我应该怎么做才能让它起作用。我调试了上面的代码以观察传递的值,但我仍然无法找出问题所在。谢谢! 最佳答

c++ - 作为 char* 传递后获取数组的长度

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:SizeofanarrayintheCprogramminglanguage?我有以下形式的代码:voidarrLen(char*array){//printlength}intmain(){charbytes[16];arrLen(bytes);}我需要做的是获取底层数组的长度并将其打印出来。问题是数组可能包含空字符,因此strlen将不起作用。有什么办法可以做到这一点,还是我必须将它作为char[]而不是char*传递?

c++ - 拆分 std::index_sequence 时出错

我正在尝试将index_sequence分成两半。为此,我生成了一个包含下半部分的index_sequence,并使用它来跳过完整index_sequence中的前导元素。以下是代表我要实现的目标的最小测试用例:templatestructindex_sequence{};templatevoidfoo(index_sequence,index_sequence){}intmain(){foo(index_sequence{},index_sequence{});}我已经用最新版本的Clang、GCC和MSVC试过了,它们都无法推断出J...。这是标准允许的吗?如果不是,为什么以及什么

C++/阿杜伊诺 : How do I convert a string/char-array to byte?

我要转换charlineOneC[8]={0,1,1,0,0,0,0,1};进入bytelineOneB=B01100001;我如何在C++/Arduino中执行此操作? 最佳答案 我不确定Adruino平台施加的具体限制,但这应该适用于任何标准编译器。charGetBitArrayAsByte(constcharinputArray[8]){charresult=0;for(intidx=0;idxAtestofthiscodeisnowonCodepad,如果说有帮助。 关于C++/

c++ - 为什么 itoa() 修改传递的 char[] 而不是返回 char[]?

itoa()函数返回void并将结果存储在传递给它的char[]数组中而不是返回char[]有什么原因吗? 最佳答案 原因是函数期望调用者分配和提供缓冲区。这在C中是非常标准的。如果函数返回一个新的缓冲区,调用者将不得不负责释放它,这将强制动态分配缓冲区。通过要求调用者提供缓冲区,该函数允许为缓冲区分配自动存储,或动态分配。事实上,我熟悉的itoa版本确实会返回调用者提供的缓冲区,而不是返回void。 关于c++-为什么itoa()修改传递的char[]而不是返回char[]?,我们在S

c++ - 为什么 const char[] 和 const char* 的比较不同?

假设我有以下代码:constcharstr1[]="asdasd";constcharstr2[]="asdasd";constchar*str3="dsadsa";constchar*str4="dsadsa";if(str1==str2){cout结果是“str3==str4”。为什么? 最佳答案 对于C++str3和str4指向相同的stringliterals,Thecompilerisallowed,butnotrequired,tocombinestorageforequaloroverlappingstringlite

c++ - 从 char* 中删除回车 (C++)

我在我的VisualStudio2008C++项目中定义了一个资源文件。问题在于,在使用LockResource方法获取资源数据后,生成的字符缓冲区包含回车符和换行符,而原始数据仅包含换行符。例如,如果原始行包含:000AFC8000002710000AFC8000002710生成的char*还包含回车符(0D):000D0AFC8000002710000D0AFC800000我尝试了以下代码来摆脱它们,但这导致回车和换行都被删除:for(inti=0;i如何去除回车但保留换行符?编辑:使它更具体。我正在将字符缓冲区写入文件:std::ofstreamoutputFile(fileNa

c++ - "hello world"string literal 可以赋给char * 类型吗?

char*foo="fpp";//compileinvs2010withnoproblem虽然字符串文字是constchar*类型。const类型不能赋值给非const类型。所以我希望上面的代码失败或者我遗漏了什么?编辑:抱歉各位,我完全忘记了编译器也会抛出警告。我一直在看错误列表。我忘了检查那个。Edit2:我将我的项目警告级别设置为EnableAllWarnings(/Wall),但没有关于此的警告。所以我的问题仍然有效。 最佳答案 C++03反对[引用1]使用不带const关键字的字符串文字。[引用1]C++03标准:§4.2