在C语言中,怎样才能从一个字符串中一个一个地获取字母,
问题补充:例如输入money,怎样获取money分别给到5个变量?如果输入的字符串长n,怎样提取到n个变量中...
问题补充: 例如输入money,怎样获取m o n e y 分别给到5个变量?如果输入的字符串长n,怎样提取到n个变量中
展开
6个回答
展开全部
在C语言中字符串有两种表示方法一种是字符指针 ,一种是字符数组。
const char *str = "helllo world"; //字符指针指向字符串
char str[] = "hello world"; //字符数组保存字符串。
字符指针,可以看作字符数组,两者都可以用维数来一个一个的操作字符。示例如下:
#include <stdio.h>
#include <string.h>
int main( )
{
const char *str = "hello world";
int limit = strlen(str);
for (int inx=0; inx!=limit; ++inx) printf("%c\t", str[inx]);
printf("\n");
return 0;
}
展开全部
用以下函数:
char *strncpy(char *strDestination, const char *strSource, size_t count);
将源串strSource开始的count个字符复制到目标串strDestination所指定的位置. 如果count值小于或等于strSource串的长度, 不会自动添加NULL结束符目标串中, 而count大于strSource串的长度时, 则将strSource用NULL结束符填充补齐count个字符, 复制到目标串中. 不能处理源串与目标串重叠的情况.
参数count 取值:1
char *strncpy(char *strDestination, const char *strSource, size_t count);
将源串strSource开始的count个字符复制到目标串strDestination所指定的位置. 如果count值小于或等于strSource串的长度, 不会自动添加NULL结束符目标串中, 而count大于strSource串的长度时, 则将strSource用NULL结束符填充补齐count个字符, 复制到目标串中. 不能处理源串与目标串重叠的情况.
参数count 取值:1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
主要就是怎么把字符串分成一个一个的字母,以及测量字符串长度。
单个字母赋值给变量,这个应该会吧。
#include<stdio.h>
main()
{
int i=0; //这里i代表检测字符串长度
char *j;
char c[30];
gets(c);
printf("%s\n",c);
j=c;
do
{printf("%c ",*j); //这里可以自己写输入到的地点,需要自己定义。
j++;
i++;
}while((*j)!=NULL);
printf("\n%d\n",i);
}
单个字母赋值给变量,这个应该会吧。
#include<stdio.h>
main()
{
int i=0; //这里i代表检测字符串长度
char *j;
char c[30];
gets(c);
printf("%s\n",c);
j=c;
do
{printf("%c ",*j); //这里可以自己写输入到的地点,需要自己定义。
j++;
i++;
}while((*j)!=NULL);
printf("\n%d\n",i);
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
定义一个字符数组,然后用getchar()获取字符到字符数组里面
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询