c-strings相关内容

在C ++中将String转换为Cstring

我有一个要转换的字符串, string =“ apple” 并想将其放入这种样式的C字符串中, char * c ,其中包含 {a,p,p,l,e,'\0'} 。我应该使用哪种预定义方法? 解决方案 .c_str()返回 const char * 。如果需要可变版本,则需要自己制作一个副本。 ..
发布时间:2020-09-27 05:42:50 C/C++开发

使用指向char的指针时访问冲突写入位置

我正在编写一个非常简单的程序,该程序将从字符串中删除重复的字符。我在Visual Studio中运行它并收到错误: inteviews.exe中0x00d110d9的未处理异常:0xC0000005:访问冲突写入位置0x00d27830。 / p> 我真的不知道问题出在哪里。当前单元格获取下一个单元格的值。 void remove(char * str,char a){ 而(* ..
发布时间:2020-09-27 01:56:37 C/C++开发

复制C字符串的正确方法

是否有一种简单的方法来复制C字符串? 我有 const char * stringA ,我想要 char * stringB 取值(请注意, stringB 不是 const )。我试过 stringB =(char *)stringA ,但是这使得 stringB 仍然指向相同的内存位置,所以当 stringA 之后会更改, stringB 也会更改。 I还尝试了 strcpy(st ..
发布时间:2020-09-26 22:44:37 C/C++开发

在C语言中查找字符串中最后一次出现的字符串

我正在练习,并且遇到了一种锻炼。练习说我要手动编写一个函数,该函数可以找到字符串中最后一次出现的索引。现在,我可能已经有人问过这个问题,但是我找不到我的代码有什么问题。它适用于几乎所有情况,但是当单词的最后一次出现在字符串的开头时不是这样。 我所拥有的尝试过的:我使用指针来存储我们要查找的句子和单词的 ends 的地址。然后,我使用了while循环来遍历字符串。如果当前字符与我们要搜索的单词 ..
发布时间:2020-09-25 03:05:15 其他开发

将1D字符*划分为2D字符**

关于将2D数组转换为1D数组有很多问题,但我正尝试相反的尝试。我正在尝试将一个字符串划分为恒定长度的子字符串,并将其放置在2D数组中。此2D矩阵的每一行都应包含初始字符串的子字符串,并且,如果要连续读取并连接每一行,则应复制初始字符串。 我几乎可以使用它了,但是由于某种原因,我丢失了初始字符串(bin)的第一个子字符串(分区[0]-长度8 * blockSize): int main ..
发布时间:2020-09-25 00:39:32 其他开发

如何在C中为char **动态分配内存

我将如何在此函数中将内存动态分配给char **列表? 该程序的基本思想是我必须从文件中读取单词列表.我不能假设最大字符串或最大字符串长度. 我必须用C弦做其他事情,但是我应该会满意的. 谢谢! void readFileAndReplace(int argc, char** argv) { FILE *myFile; char** list; ch ..
发布时间:2020-09-07 07:06:21 其他开发

为什么fgets()和strncmp()在此C代码中无法进行字符串比较?

这是我遇到的一个非常有趣的问题.我做了很多关于堆栈溢出的搜索,发现其他人也有类似的问题.因此,我相应地编写了代码.我本来有fscan()和strcmp(),但是那完全炸了我.因此,其他帖子建议使用fgets()和strncmp()并使用长度进行比较. 我试图通过打印出两个字符串的大小来调试我正在做的事情.我以为,也许他们有/n漂浮在里面或什么东西弄乱了它(另一篇文章谈到了这一点,但是我不认为 ..
发布时间:2020-07-25 22:07:28 其他开发

将未知长度的char **(c)转换为vector< string> (C ++)

如何将C char **转换为C ++向量?是否可以使用某些内置功能来执行此操作,还是通过一系列迭代步骤来实现此功能更好? 编辑:由于各种原因,C数组中的元素数量未知.我可以将其作为另一个参数传递,但这绝对必要吗? 解决方案 您可以简单地使用std::vector的构造函数,该构造函数需要两个迭代器: const char* arr[] = {"Hello", "Friend" ..
发布时间:2020-07-17 23:40:05 C/C++开发

字符数组应如何用作字符串?

我知道C语言中的字符串只是字符数组.因此,我尝试了以下代码,但给出了奇怪的结果,例如垃圾输出或程序崩溃: #include int main (void) { char str [5] = "hello"; puts(str); } 为什么这行不通? 它可以用gcc -std=c17 -pedantic-errors -Wall -Wextra干净地编 ..
发布时间:2020-07-01 22:20:14 其他开发

错误的类型涉及将向量转换为提要到execvp

我有一个字符串向量vector args,我需要将其转换为c字符串,然后再通过execvp调用作为参数运行.我不断收到错误“循环中的行从const char *到char *的无效转换.我不明白如何解决此问题,同时仍然导致可以馈给execvp的东西.虽然我看到过类似的文章,但我遇到的解决方案之一似乎可以解决我的问题. int argsLen = c->args.siz ..
发布时间:2020-06-14 18:46:21 C/C++开发

在ConsoleApplication5.exe中的0x0F640E09(ucrtbased.dll)引发异常:0xC0000005:访问冲突写入位置0x014C3000?

我刚刚编译了这段代码,它向我显示了此错误: 在ConsoleApplication5.exe中的0x0F640E09(ucrtbased.dll)处引发了异常:0xC0000005:访问冲突写入位置0x014C3000.我真的不知道这个错误是什么意思,因为我刚刚使用C ++几个月了,我也曾尝试在任何其他网站上寻求帮助,但没有找到任何帮助. 对于此代码,只允许使用c字符串函数和 ..
发布时间:2020-05-28 23:39:44 C/C++开发