strncpy(char* s1,const char *s2,int n) 和 strchr(cosnt char *s,char c)

 1 #include<stdio.h>
 2 #include<string.h>
 3 int main()
 4 {
 5      char s1[10] = "abcd";
 6      char s2[10] = "ABCDEF";
 7      printf("s1 =  %s\ns2 = %s\n",s1,s2);
 8      strncpy(s1,s2,3);
 9      printf("s1 = %s\ns2 = %s\n",s1,s2);
10
11      char string[17];
12      char *ptr,c = ‘r‘;
13      strcpy(string,"This is a string");
14      ptr = strchr(string,‘i‘);
15      if(ptr)
16           printf("the character %c is at position:%s\n",c,ptr);
17      else
18           printf("the character was not found\n");
19
20
21      return 0;
22 }
23
24 s1 =  abcd
25 s2 = ABCDEF
26 s1 = ABCd
27 s2 = ABCDEF
28 the character r is at position:is is a string
29 Press any key to continue
时间: 2024-10-09 00:40:29

strncpy(char* s1,const char *s2,int n) 和 strchr(cosnt char *s,char c)的相关文章

char* str=&quot;bbo&quot;;char s1[]=&quot;bbo&quot;的区别

;表达式运算得到的结果是常量值(不可写),常量是没有内存空间的编译的时候就会把常量放到常量区,以后不能修改 字符串是字符串常量,字符是字符常量(修改),看到的能修改的都是已经从常量区放到寄存器,在mov到变量中了所以能修改 char* str="helloworld";char s1[]="bbo"的区别 int main(int argc, char* argv[]){ int a=1; char* str="bbo"; *str='m';//

实现 reverse(const char *s1 , char *s2)

题目: 将字符串s1的内容反转后输出到s2,比如s1="12345678",则输出s2为"87654321",实现语言选择一种即可.  C语言实现时要求不能使用包括strlen在内的任何库函数,也不能定义和使用除s1.s2以外的其它变量.使用如下原型的C函数void reverse(const char *s1, char *s2); 总结: 如果是定义的字符串常量的话,默认类型是const类型的,也就说是如果我们把字符传直接传进去,类型是const,也就是无法修改

C++ char*,const char*,string,int 的相互转换

C++ char*,const char*,string,int 的相互转换 1. string转const char* string s ="abc";const char* c_s = s.c_str(); 2. const char*转string 直接赋值即可 const char* c_s ="abc";string s(c_s); 3. string转char* string s ="abc";char* c;constint len

对于char *s1 和 char s2[] 的认识

对于char *s1 和 char s2[] 认识有误区(认为无区别),导致有时出现“难以理解”的错误. char *s1 = "hello"; char s2[] = "hello"; [区别所在] char *s1 的s1,而指针是指向一块内存区域,它指向的内存区域的大小可以随时改变,而且当指针指向常量字符串时,它的内容是不可以被修改的,否则在运行时会报错. char s2[]的s2 是数组对应着一块内存区域,其地址和容量在生命期里不会改变,只有数组的内容可以改

int sprintf_s(char *,size_t,const char *,...)”: 不能将参数 2 从“const char [3]”转换为“size_t”

2014-03-02 20:14 在编译下列代码时,出现以下错误: cpp(23) : error C2664: “int sprintf_s(char *,size_t,const char *,...)”: 不能将参数 2 从“const char [3]”转换为“size_t” 请问这是什么意思?该怎么修改? #include<iostream> #include<string> #include<stdio.h> using namespace std; str

Invalid arguments &#39; Candidates are: std::basic_ostream&lt;char,std::char_traits&lt;char&gt;&gt; &amp; write(const char *, int) &#39;

const char* p = "hello itcast"; cout.write(p,strlen(p)) << endl; cout.write(p,strlen(p) - 4) << endl; cout.write(p,strlen(p) - 4) << endl; 代码十分简单,通过对比vs,得知gcc调用的是ostream.tcc文件中的write函数write(const _CharT* __s, streamsize __n). v

已知strcpy的函数原型:char *strcpy(char *strDest, const char *strSrc),编写函数 strcpy

已知strcpy的函数原型:char *strcpy(char *strDest, const char *strSrc)其中strDest 是目的字符串,strSrc 是源字符串.不调用C++/C 的字符串库函数,请编写函数 strcpy. /*编写strcpy函数(10分)已知strcpy函数的原型是??? char *strcpy(char *strDest, const char *strSrc);??? 其中strDest是目的字符串,strSrc是源字符串.(1)不调用C++/C的字

char*,const char*,char[],string之间的转换问题。

#include <iostream> #include <stdlib.h> #include <string> using namespace std; int main() { // string和const char*互转 const char* a; string str_1 = "my name is pang"; a = str_1.c_str(); cout<<a<<endl; //const char*转st

[基础-001]C++字符串转换(char*,const char*,string)

1. string转const char* 1 string str ="abc"; 2 const char* charArr = str.c_str(); 2. const char*转string 1 const char* charArr = "abc"; 2 string str(charArr); 3. string转char* 1 string str ="abc"; 2 char* charArr; 3 const int len