c-strings

    0热度

    1回答

    上访问char * 我只是试验并创建自己的字符串类。 (主要是因为有一些东西我想用诸如“toBase64”等自定义方法构建等等。无论如何,我想知道如何在使用& String [0]时访问char *的私有成员。 我认为你可以使用操作符重载,但我目前只把它当作字符串[0]返回char *。(我知道&是指针运算符)。 STRING.H namespace CoffeeBeans { cla

    0热度

    2回答

    我正在绞拧一个简单的代码来学习更多关于字符串的知识。当我运行我的代码时,它不会显示我的姓氏。有人能解释为什么吗?我使用了字符串短语来存储它,它似乎只存储了我的名字。这是代码。 #include <iostream> #include <string> #include <cstring> using namespace std; int main() { cout << "E

    0热度

    1回答

    我有字符数组这样的: "CA: ABCD\0CB: ABFG\0CC: AFBV\0CD: 4567" 现在从值": "分裂键,同时\0分离对。我想使用strchr或memchr函数将键值对添加到C++中的映射中。有什么建议么?

    4热度

    3回答

    所以我就好奇阅读一些C代码;假设我们有以下代码: char text[10] = ""; C编译器在哪里放置空字符? 我能想到的3种可能情况下 在开始的时候,然后9个字符的任何用于在存储器 最后,垃圾所以9个字符,然后尾随'\0' 它与10 '\0' 的问题完全填满它,这取决于这两种情况下,是否有必要添加尾随'\0'做strncpy时。如果是案例2和案例3,那么这不是必须的,但是一个好主意;如

    0热度

    1回答

    我无法尝试让用户输入一个数字串矩阵并试图将它们转换为整数,以便我可以在矩阵上执行数值运算。我的代码如下。 int matrix1[10][10]; string first_matrix; cout << "Enter first matrix:\n"; while (first_matrix != " ") getline(cin, first_ma

    0热度

    1回答

    我已经完成的任务的一部分。分配状态 - 编写一个程序,打印5个带星号的条形图。应该创建一个接受长度(星号数量)的函数,然后调用5次不同的时间来打印图形。使用输入验证来确保用户输入小于或等于50的正数。创建一个接受表示要打印的星号数量的整数值的函数。只有1个值应该传递给函数。在函数内部使用for循环来打印与传递给函数的数字相对应的星号的数量 我有这个到目前为止,但是当涉及到函数时我挣扎得很厉害。我不

    3热度

    1回答

    我想这样做的原因是因为我想逐行读取文件,并为每一行检查它是否匹配正则表达式。我正在使用getline()函数,该函数将该行放入一个char *类型变量中。我正在尝试使用regexec()来检查正则表达式匹配,但此函数要求您提供匹配的字符串作为const char *。 所以我的问题是,我可以从char *创建一个const char *?或者,有没有更好的方法来解决我在这里要解决的问题? 编辑:我

    0热度

    1回答

    所以我被要求写在同一时间反转其输入行的程序,这就是我基本上想出了: #include <stdio.h> #include <string.h> #define MAXLINE 1000 int getLine(char s[], int lim) { int c, i; for (i = 0; i < lim - 1 && (c = getchar()) !=

    6热度

    1回答

    当重载一个方法时,我相信当多个匹配可用时编译器会选择更简单的匹配。 考虑以下代码: #include <iostream> #include <string> struct A { static void foo(const char *str) { std::cout << "1: " << str << std::endl; } templat

    3热度

    1回答

    例如考虑C字符串数组,所有的数字 ..."12334", "21335", "24335"... ,我想知道如何这些字符串的很多比赛这个通配符掩码 **33* (where * = any digit 0-9) 我可以用sscanf(str, mask, ...)做到这一点?格式"%1d%1d%[3]%[3]%1d"似乎比我想要的要多(当33不在那里时)和"%1d%1d33%1d"似乎表现