char a[100],b[100];
char c[200];
c=a;
c=a这个表达式完全错误!因为你不能直接将一个数组赋值给另一个数组。你需要使用 strcpy
函数来复制字符串
// 复制字符串 strcpy(c, a); // 使用 strcpy 函数复制字符串
意为将a给c,就好像赋值一样,左边才是对象
#include <string.h> // 需要包含这个头文件以使用 strcpy,strcpy和strlen一样都是处理字符(串)
//这里的题目是连接两个字符串
题目:写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出"1 9 9 0"
最垃圾的题目,但是为了扩展还是说一下
第一个,最最直接的思路,把数字当成数字,用\用%,然后直接或者用数组去存,输出
第二个,就是反常规了。我考虑的是,将四位数字看成字符串,利用遍历数组去输出
int main() {
char ch[4];
scanf("%s", &ch);
for (int i = 0; i < 4; i++) {
printf("%c ", ch[i]);
}
return 0;
}
就这么简单!(投机取巧,考试勿用)
#include <stdio.h>
#include <string.h>
int main() {
char ch[4];
scanf("%s", &ch);
int number = atoi(ch); // 使用 atoi 函数将字符串转换为整数
printf("%d", number);
return 0;
}
这个代码中用到了标准库里面的atoi函数,它的全称是 “ASCII to Integer”,用于将字符串转换为整数
值得注意的是,它在标准库里面而不是string头文件里面
//这里不能使用强制类型转换,而且,atoi函数的对象必须全是数字的字符串,如果输入字符串不合法(例如包含非数字字符),它可能会返回 0并出现错误
这里就是单纯了解下atoi,这块代码就是纯粹浪费时间没几把用
Comments NOTHING