c语言str教学,c程序str

发布时间:2023-01-03

本文目录一览:

1、c语言问题关于编程中的str 2、c语言 str函数 3、请问C语言里str_copy具体怎么使用? 4、c语言中str是什么意思

c语言问题关于编程中的str

你的意思是你直接给str赋值的语句是下面这样的吗?

char str[100] = 1010;

我这边连编译都通不过,直接报错了! 右值应该是字符串,也就是说,要用双引号括起来,如下所示:

char str[100] = "1010";

这样就可以正常输出了! 以上,如有帮助,烦请点采纳,谢谢!

c语言 str函数

1、strcat()

此函数原型为 char *strcat(char *dest, const char *src). 功能为连接两个字符串,把src连接到dest后面;返回dest地址 实现如下:

char * strcat(char *dest,const char *src)
{
    char* addr = dest;
    while(*dest) //找到'\0'
    {
        dest++;
    };
    while(*dest++ = *src++)
    {
    };
    return addr;
}

2、strcmp()

此函数的函数原型为 int strcmp(const char *str1, const char *str2). 功能为比较两个字符串。

  • 当str1指向的字符串大于str2指向的字符串时,返回正数。
  • 当str1指向的字符串等于str2指向的字符串时,返回0。
  • 当str1指向的字符串小于str2指向的字符串时,返回负数。 实现如下:
int strcmp(const char *str1, const char *str2)
{
    while(*str1 == *str2)
    {
        if(*str1 == '\0')
            return 0;
        str1++;
        str2++;
    }
    return *str1 - *str2;
}

3、strcpy()

此函数原型为 char *strcpy(char* dest, const char *src) 功能为拷贝字符串内容到目的串,把src所指向的内容拷贝到dest 实现如下:

char *strcpy(char *dest,const char *src)
{
    //assert(dest!=NULL && src!=NULL);
    char *addr = dest;
    while(*dest++ = *src++);
    return addr;
}

4、strlen()

此函数原型为 unsigned int strlen(const char *str) 功能为返回字符串str的长度(不包括'\0')。 实现如下:

unsigned int strlen(const char *str)
{
    unsigned len = 0;
    while(*str != '\0')
    {
        len++;
        str++;
    }
    return len;
}

5、strchr() strrchr()

char *strchr(char *str, char c) 功能为查找str中首次出现c的位置,如有有,则返回出现位置,否则返回NULL。实现如下:

char *strchr(char *str, char c)
{
    while(*str != '\0' && *str != c)
    {
        str++;
    }
    return (*str == c ? str : NULL);
}

char *strrchr(char *str, char c) 功能为查找str中最后一次出现c的位置,如有有,则返回出现位置,否则返回NULL。实现如下:

char *strrchr(char *str, char c)
{
    char *p = str + strlen(str); //p指向最后一个字符
    while(p != str && *p != c)
        p--;
    if(p == str && *p != c)
        return NULL;
    else return p;
}

6、strcspn() strspn()

strcspn 原型:size_t strcspn(const char *pstr, const char *strCharset) MSDN解释为:在字符串pstr中搜寻strCharsret中所出现的字符,返回strCharset中出现的第一个字符在pstr中的出现位置。简单的说,若strcspn返回的数值为n,则代表字符串strCharsrt开头连续有n个字符不包含在pstr内的字符。 功能:返回后面字符串中第一个不在前者出现的下标。

7、strdup()

此函数原型为 char *strdup(const char *str) 功能为拷贝字符串到新建的内存,返回内存指针。若失败,返回NULL。要注意,返回的指针指向的内存在堆中,所以要手动释放。 函数实现:

char *strdup(const char *str)
{
    char *p = NULL;
    if(str && (p = (char*)malloc(strlen(str) + 1)))
        strcpy(p, str);
    return p;
}

8、strrev()

此函数的原型为 char *strrev(char *str) 功能为反转字符串,返回字符串指针。 函数实现:

char *strrev(char *str)
{
    if(str == NULL)
        return NULL;
    char *start = str;
    char *end = str + strlen(str) - 1;
    char temp;
    while(start < end)
    {
        temp = *start;
        *start = *end;
        *end = temp;
        start++;
        end--;
    }
    return str;
}

9、strstr()

函数原型为 char *strstr(const char *str1, const char *str2) 功能为查找字符串str2在str1中出现的位置,找到则返回位置,否则返回NULL。 函数实现:

char *strstr(const char *str1, const char *str2)
{
    int length1 = strlen(str1);
    int length2 = strlen(str2);
    while(length1 >= length2)
    {
        length1--;
        if(!strncmp(str1, str2, length2)) //比较前n个字符串,类似strcpy
            return (char *)str1;
        str1++;
    }
    return NULL;
}

请问C语言里str_copy具体怎么使用?

是strcpy吧 原型声明:extern char *strcpy(char dest[], const char *src); 头文件:#include <string.h> 功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。 返回指向dest的指针

#include <stdio.h>
#include <string.h>
int main(void)
{
    char str1[10];
    char str2[] = "Hello,Word";
    strcpy(str1, str2); //把str2复制到str1,大意是:str1=str2//但是这样写在C语言是错的
    printf("str1=%s\n", str1);
    return 0;
}

c语言中str是什么意思

str -- 通常,程序员喜欢用它作字符串变量名。它是 string(英文词、字符串的缩写) Str函数,返回代表一数值的 Variant(String)。语法 Str(number),必要的 number 参数为一 Long,其中可包含任何有效的数值表达式。 说明:当一数字转成字符串时,总会在前头保留一空位来表示正负。

扩展资料:

  • 如果 number 为正,返回的字符串包含一前导空格暗示有一正号。使用 Format 函数可将数值转成必要的格式,如日期、时间、货币或其他用户自定义格式。与 Str 不同的是,Format 函数不包含前导空格来放置 number 的正负号。
  • 注意 Str 函数只视句点 (.) 为有效的小数点。如果使用不同的小数点(例如,国际性的应用程序),可使用 CStr 将数字转成字符串。