如何将一个字符串输入到一个数组中?

如何将一个字符串输入到一个数组中?,第1张

字符串存储在数组中一般有如下几种方法:

1、声明数组时赋值,如:char str[]="abcd"

2、运行时由键盘输入,如:scanf("%s",str)要确定输入的字符串长度不大于数组长度减一;

3、在程序代码中把另一个字符串赋值给一个数组用函数strcpy,如:strcpy(str,"abcd")或者strcpy(str,str2)str2为一个存有字符串的数组,或者指向字符串的指针。这个药保证str要能放得下字符串。

泛型只是给编译器看的,事实上泛型在编译完后就没有了,其本质上添加的任然是Object类型的,所以可以通过反射机制来实现

参考代码:

import java.util.ArrayList

import java.lang.reflect.Method

public class Demo {

public static void main(String[] args) throws Exception {

ArrayList<Integer>array = new ArrayList<Integer>()// 创建集合

Class c = array.getClass()// 或者Class c = ArrayList.class

Method m = c.getDeclaredMethod("add", Object.class)// 获取add()方法的字段值

m.invoke(array, "Hello")// 添加Hello字符串

m.invoke(array, "World")// 添加World字符串

System.out.println(array)// 输出array

}

}

运行结果:

[Hello, World]

将输入S1,S2.将S1第N个字符前复制到S3,在S3后跟S2,再将S1从N字 符的内容跟再S3后

#include <stdio.h>

#include <string.h>

int main(int argc, char* argv[])

{

static char s1[10],s2[10],s3[20]

int n,i

printf("input s1\n")

gets(s1)

printf("input s2\n")

gets(s2)

printf("input n\n")

scanf("%d",&n)

for (i=0i<ni++)

s3[i]=s1[i]

strcat(s3,s2)

//for (i=n-1i<ni++)

//strcat(s3,s1[i])

strcat(s3,&s1[n])

printf("%s\n",s3)

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11917035.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存