Sj中国智造 发表于 2017-11-10 17:04:45

数组的一个问题

本帖最后由 Sj中国智造 于 2017-11-10 17:08 编辑

为什么有的数组显示incomplete sequence\272,然后出现incomplete sequence\272的数组赋不了值,什么原因

BngThea 发表于 2017-11-10 17:04:46

Sj中国智造 发表于 2017-11-10 18:27
#include

#include


你可以在定义B的时候进行初始化
因为没有初始化,而你的du赋值过程会跳过某些位置,里面存放的就是随机的字符了

BngThea 发表于 2017-11-10 17:08:10

感觉是越界了

Sj中国智造 发表于 2017-11-10 17:16:47

BngThea 发表于 2017-11-10 17:08
感觉是越界了

可是一开始我都还没给B 赋值

BngThea 发表于 2017-11-10 17:40:00

Sj中国智造 发表于 2017-11-10 17:16
可是一开始我都还没给B 赋值

把你的代码贴出来,然后说明你调试到哪一步出现这种情况

闪电猫网络 发表于 2017-11-10 18:18:37

初步感觉是数组初始化问题,具体看代码

Sj中国智造 发表于 2017-11-10 18:27:03

本帖最后由 Sj中国智造 于 2017-11-10 18:44 编辑

BngThea 发表于 2017-11-10 17:40
把你的代码贴出来,然后说明你调试到哪一步出现这种情况

#include <stdio.h>

#include <string.h>

int main()

{

        char A;

        char B;

        int i,j,k;

        gets(A);

        for (i=0,j=0,k=0;i<100;i++){

                if(!(A == '\0')) {

                        if (A!=' '&&A!=','&&A!='.') B = A,
k++;

                        else B = '\0',j++,k=0;

                }

                else break;

        }

        for (i=j;i>=0;i--){

                printf("%s",B);

                printf(" ");

        }

        return 0;

}
这是代码,就是B有些不能赋值,它直接跳过

闪电猫网络 发表于 2017-11-10 18:36:28

本帖最后由 闪电猫网络 于 2017-11-10 18:37 编辑

if (A!=' '&&A!=','&&A!='.') B = A,k++   //这个A是个数组,单个元素赋值是需要用下标的.同样也不能给b数组元素这样赋值.A加上下标就可以了应该.

Sj中国智造 发表于 2017-11-10 18:44:46

闪电猫网络 发表于 2017-11-10 18:36
if (A!=' '&&A!=','&&A!='.') B = A,k++   //这个A是个数组,单个元素赋值是需要用下标的.同样也不能 ...

A 是A,没显示出来

闪电猫网络 发表于 2017-11-10 20:17:59

Sj中国智造 发表于 2017-11-10 18:44
A 是A,没显示出来

数组切记要初始化,不然以后很容易出问题的.
页: [1]
查看完整版本: 数组的一个问题