c-strings

    1热度

    1回答

    是否可以在C程序中使用“临时字符串对象”? 例如,我有一个相当大的char *对象(结构的一部分)的数组,它们当前正在使用堆分配的内存。我有机会减少我的程序的内存使用量,因为大多数这些名称都可以在不使用明确的字符数组的情况下确定(尽管不是所有的都可以)。 在C++中,我只是简单地创建一个API,它返回一个std :: string对象(按值)并完成它。在C中,我可以想出任何我很激动的解决方案。建议

    5热度

    3回答

    我有一个unsigned char[16]字段的结构,我想初始化为零。下面的(非常简化的)代码编译罚款铿锵(OS X): struct GUID { unsigned char bytes[16]; GUID() : bytes("\0\0\0\0""\0\0\0\0""\0\0\0\0""\0\0\0") {}; } 注意我用15个\0是因为16日是零终止字符串字面量,

    1热度

    2回答

    我是cpp的初学者,并对以下代码有问题。通常它应该根据argv [1]显示文本,但它不显示任何内容。 我在做什么错? #include <stdio.h> int main (int argc, char* argv[]) { if(argv[1] == "a" && argc > 1) printf("hello world, argc: %d\n", argc);

    -2热度

    5回答

    以下两个程序使用一些基本的指针操作。但他们的表现不同。 #include<stdio.h> #include<string.h> int main(void){ int a = 1; int b = 2; int *pb, *pc; pb = &a; pc = pb; pb = &b; printf("%d %d\n",

    0热度

    1回答

    帮我..为什么这个C程序不反转字符串? 崩溃......但是当我使用的字符数组的代码似乎工作fine..but我使用一个指向string..its给人心潮起伏的那一刻......帮我解决这个.. #include<stdio.h> #include<conio.h> #include<string.h> int main(){ char *String="gokul";

    1热度

    3回答

    我为字符串定义了一个数组。如果我以这种方式定义它,第一个元素不是空字符串,它工作正常。当其为空字符串时,其他字符串的下一个scanf()将停止读取输入字符串,并停止执行程序。 现在我不明白如何定义字符串数组影响读取输入scanf()。 char *str_arr[] = {"","abc","","","b","c","","",""}; // if first element is "abc"

    1热度

    4回答

    美好的一天, 所以我决定再去槽我的C和开始做一个简单的搜索字符串中的单词串词。 这里是我的代码: #include<stdio.h> #include<conio.h> #include<string.h> main(){ char word[100]; char sentence[100]; clrscr(); printf("Enter a word: "); fgets(

    -3热度

    1回答

    我需要检查,如果在我的文件中有重复条目,在C. 示例文件: /proc/proc1 1000 /proc/proc2 2000 /proc/proc1 3000 ,我需要解决这样的: /proc/proc1 1000 3000 /proc/proc2 2000 路径(/ proc/proc *)可以包含空格,如:/ proc/proc hello/foo Here我写了一些事情处理/

    0热度

    2回答

    我需要像这样 const char **nodeNames[] = { {"RootNode", "Reference", "Node_1", "Node_2", "Node_3"}, {"RootNode", "Hips", "Node_1", "Node_2", "Node_3"}, {"RootNode", "Heviest", "Node_1", "Node

    0热度

    1回答

    我对C很新,因此作为我学习的一部分,我想创建一个函数,它只是返回一个字符串,它是输入中的下一行没有任何需要的论据。 这是我到目前为止有: #define BUFFER 256 char *str; char *getline() { if (str == 0) str = (char*)calloc(BUFFER, sizeof(char)); if (fge