c语言char数组赋值解决方案
c语言char数组赋值
char splitStr[20];
char ciphertext[100];
int i,flag = 0;
gets(ciphertext); //输入字符串
for(i= 0; i < strlen(ciphertext); i++) //遍历读取字符串每个字符
{
splitStr[flag] = plaintext[i]; //将每个字符复制给splitStr数组
printf("%s",splitStr); //为什么这样输入会出现乱码?
flag++;
}
请问splitStr[flag] = plaintext[i];这句是将splitStr[flag]中存的是plaintext[i]的地址还是值?
printf("%s",splitStr); //为什么这样输入会出现乱码?
------解决方案--------------------
值...
------解决方案--------------------
------解决方案--------------------
char splitStr[20];
char ciphertext[100];
int i,flag = 0;
gets(ciphertext); //输入字符串
for(i= 0; i < strlen(ciphertext); i++) //遍历读取字符串每个字符
{
splitStr[flag] = plaintext[i]; //将每个字符复制给splitStr数组
printf("%s",splitStr); //为什么这样输入会出现乱码?
flag++;
}
请问splitStr[flag] = plaintext[i];这句是将splitStr[flag]中存的是plaintext[i]的地址还是值?
printf("%s",splitStr); //为什么这样输入会出现乱码?
------解决方案--------------------
值...
------解决方案--------------------
------解决方案--------------------
- C/C++ code
#include <stdio.h> #include <string.h> int main(int argc, char* argv[]) { char splitStr[20]; char ciphertext[100]; int i,flag = 0; gets(ciphertext); //输入字符串 for(i= 0; i < strlen(ciphertext); i++) //遍历读取字符串每个字符 { splitStr[flag] = ciphertext[i]; //将每个字符复制给splitStr数组 flag++; } splitStr[flag]='\0'; printf("%s",splitStr); //为什么这样输入会出现乱码? return 0; }