Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c中的字符串数据类型_C_String_Char - Fatal编程技术网

c中的字符串数据类型

c中的字符串数据类型,c,string,char,C,String,Char,我是C语言的初学者, 我正在尝试编写一个函数来返回字符串。 我知道C语言中没有字符串数据类型。我尝试使用一个字符数组来代替这些字符,但这不是我的解决方案 char[] my_function(int x){ if(x>0) return 'greaterThanZero'; else return 'smallerOrEqualOfZero'; } 请帮助我。使用“而不是”('greaterThanZero'应该是“greaterThanZ

我是C语言的初学者, 我正在尝试编写一个函数来返回字符串。 我知道C语言中没有字符串数据类型。我尝试使用一个字符数组来代替这些字符,但这不是我的解决方案

char[] my_function(int x){
    if(x>0)
        return 'greaterThanZero';
    else
        return 'smallerOrEqualOfZero';
}

请帮助我。

使用
而不是
'greaterThanZero'
应该是
“greaterThanZero”

使用
而不是
'greaterThanZero'
应该是
“greaterThanZero”

在greaterThanZero和smallerOrEqualOfZero周围使用双引号

或者,您也可以返回单个字符(比如g/s)&然后在调用者函数中使用条件


注意:“greaterThanZero”通常会进入const部分,而不是堆栈。因此,从函数返回应该是安全的。

在大于零和小于零的地方使用双引号

或者,您也可以返回单个字符(比如g/s)&然后在调用者函数中使用条件


注意:“greaterThanZero”通常会进入const部分,而不是堆栈。因此,从函数返回应该是安全的。

返回类型需要是
const char*
,字符串文本需要用双引号括起来:

const char * my_function(int x)
{
    if (x > 0)
        return "greaterThanZero";
    else
        return "lessThanOrEqualToZero";
}

int main(void)
{
    printf("my_function(1)  = %s\n", my_function(1));
    printf("my_function(0)  = %s\n", my_function(0));
    printf("my_function(-1) = %s\n", my_function(-1));
    return 0;
}
请注意,单引号用于
char
变量:

char c = 'X';                // single character - single quotes
char *s = "Hello world!";    // string - double quotes

返回类型需要是
const char*
,字符串文本需要用双引号括起来:

const char * my_function(int x)
{
    if (x > 0)
        return "greaterThanZero";
    else
        return "lessThanOrEqualToZero";
}

int main(void)
{
    printf("my_function(1)  = %s\n", my_function(1));
    printf("my_function(0)  = %s\n", my_function(0));
    printf("my_function(-1) = %s\n", my_function(-1));
    return 0;
}
请注意,单引号用于
char
变量:

char c = 'X';                // single character - single quotes
char *s = "Hello world!";    // string - double quotes
大体上

int main() {
   char *string;
   my_function(1, &string);
   printf("%s",string);
}
int main() {
   char string[100];
   my_function(1, string);
   printf("%s",string);
}
另一种方式:

void my_function(int x, char *T){
        if(x>0)
            strcpy(T,"greaterThanZero");
        else
            strcpy(T, "smallerOrEqualOfZero");
    }
大体上

int main() {
   char *string;
   my_function(1, &string);
   printf("%s",string);
}
int main() {
   char string[100];
   my_function(1, string);
   printf("%s",string);
}
大体上

int main() {
   char *string;
   my_function(1, &string);
   printf("%s",string);
}
int main() {
   char string[100];
   my_function(1, string);
   printf("%s",string);
}
另一种方式:

void my_function(int x, char *T){
        if(x>0)
            strcpy(T,"greaterThanZero");
        else
            strcpy(T, "smallerOrEqualOfZero");
    }
大体上

int main() {
   char *string;
   my_function(1, &string);
   printf("%s",string);
}
int main() {
   char string[100];
   my_function(1, string);
   printf("%s",string);
}