cout<<""He said:\"I ama stu\\dent.\";//如果字符常量中包含双引号,则双引号应写为'\"',字符串出现时,需连写两次,变成'\\'
a[3]=0;//等效于a[3]='\0';
while(gets(ss))//输入操作
char line[100];
scanf("%s",line)//注意,不是用&line;
char line [5];
scanf("%s",line);//如输入12345,越界,cin与其相同
cin.getline (char a[],int asize);//输入一行(行长不超过asize-1) 自动添加'\0'回车换车不会写入a,但是会从输入流中去掉
char.line[10];
cin.getline(line,sizeof(line));//或cin.getline (line,10);读入最多9个字符到line
//读入一行到数组
gets(char buf[]);//读入一行,自动'\0'回车换行符不会写入buf,但是会从输入流中去掉,可能导致数组越界!
chars[10];
while(gets(s)){
printf("%s\n",s);
}
//字符串函数
strcat(s1,s2);
strcpy(char[]dest,char[]src);//拷贝src到dest,
int strcmp(char[]dest,char[]src);//还有strcmp(s1,s2)
int strlen(char[]s);
strupr(char[]);
strlwr(char[]);
//strlen糟糕用法
char s[100]="test",int i;
for(i=0;i<strlen(s);++i){s[i]=s[i]+1;}//strlen(i)执行是需要时间的
//int len=strlen(s);
for(int i=00;i<len;++i){s[i]=s[i]+1;}//把s[i]存放成定值
//例题/*如果s2不是s1的字串,返回-1;如果s2是s1的子串,返回其在s1中第一次出现的位置;空串是任何的子串,且出现位置为0*/
#include <stdio.h>
int strstr(char s1[],char s2[]){
if(s2[0]==0)
return 0;
for(int i=0;s1[i];++i){ //保证主串的从第k个位置与子串各位置比较
int k=i,j=0;
for(;s2[j];++j,++k){
if(s1[k]!=s2[j])
break;
}
if(s2[j]==0)
return i;
}
return-1;
}
main(){
int t;
char a1[100],a2[100];
scanf("%s",a1);
scanf("%s",a2);
t=strstr(a1,a2);
printf("%d",t);
}