发布网友
共3个回答
热心网友
C语言中并没有字符串这个类型,表示字符串时,需要使用字符数组,或字符指针。即char型数组,或char *指针。
如
char str[100] = "hello world";
就是一种字符串的表示方法。
另外,在C语言中,约定用字符数组表示字符串时,以'\0'为字符串结尾,即ascii码0。
热心网友
//举例说明吧!
#include<stdio.h>
#include <string.h>
#include <ctype.h>
int Palindrome(char *a)
{
int i,l;
l=strlen(a);
for(i=0;i<l/2;i++)
if(toupper(a[i])!=toupper(a[l-1-i])) return 0;
return 1;
}
void main()
{
char s[81];
gets(s); //这就是输入!这就是输入!这就是输入!
if(Palindrome(s)) //这个字符串作为一个函数的参数!
printf("Palindrome.\n");
else
printf("not Palindrome.\n");
}
热心网友
1、可以固定字符数组接收,a[100]代表最多能接收99字符(末尾用\0结束)
可以用getchar,scanf("%c",a[i]),gets(a)等读入
2、如果字符串非常大,可以动态创建
int M=100;
char *p;
p=(char*)malloc(sizeof(char)*M);
当用getchar()读入时候,如果超过M,可以用realloc(p,sizeof(char)*M*x)扩充,x为M的整数倍
或者用链表一个一个字符链接起来
做函数参数,可以直接用数组名传递,要注意函数会改变数组元素值
void fun(char *a)