c语言如何表示字符串?

发布网友

我来回答

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)

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com