本文目录一览:
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 将数字转成字符串。