C 无符号字符数组的输入
我一直在做一个位级别的加密程序,除了一个小细节,我所有的东西都在工作,我必须硬编码我的未签名字符。。。我想做的是提示用户做两件事: -文本,将文本放入我的无符号字符数组(包括空格) -数字,将数字放入另一个无符号字符数组(无空格) 文本数组示例: 输入:你好,世界C 无符号字符数组的输入,c,arrays,input,char,unsigned,C,Arrays,Input,Char,Unsigned,我一直在做一个位级别的加密程序,除了一个小细节,我所有的东西都在工作,我必须硬编码我的未签名字符。。。我想做的是提示用户做两件事: -文本,将文本放入我的无符号字符数组(包括空格) -数字,将数字放入另一个无符号字符数组(无空格) 文本数组示例: 输入:你好,世界 unsigned char text[11] = {'h','e','l','l','o',' ','w','o','r','l','d'} 给出的数字示例(请注意,我不希望数组中出现“123”,而是123): 提供的输入:123
unsigned char text[11] = {'h','e','l','l','o',' ','w','o','r','l','d'}
给出的数字示例(请注意,我不希望数组中出现“123”,而是123):
提供的输入:123 213 146 178
unsigned char text[4] = {123, 213, 146, 178}
更新:我将文本放入数组并对其进行编码。谢谢你的帮助。明天我将处理插入编码数字的问题
更新2:我熬夜了。。。代码正在进行解码。长句子的停顿。我明天会调查的。谢谢大家!:) 不推荐将答案更新为
get()
提示您可以采取的解决问题的方法之一
对于问题的第一部分,请使用fgets()
对于第二部分,使用
fgets()
获取整个输入,使用空格作为分隔符将它们分解为令牌(strtok()
可以),并使用atoi()
获取其整数值并将其存储在数组中。我遵循了Raunak Mukhia的逻辑,成功了!
"
不推荐将答案更新为get()
提示您可以采取的解决问题的方法之一
对于问题的第一部分,请使用fgets()
对于第二部分,使用fgets()获取整个输入,使用空格作为分隔符将它们分解为标记(strtok()可以),并使用atoi()获取其整数值并将其存储在数组中
"
谢谢大家! 我只是想问一个正确方向上的点,用什么。scanf(),显然不是正确的方法。我只是想知道如何解析数据。当我开始用java编写代码时,我对C是新手,所以我正在重做旧代码来学习。我做了更复杂的位比较。我知道如何使用scanf提示输入数据并将其单独存储到数组中。。。我想把它全部收进去,然后分开。“scanf(),显然不是正确的方法”——你是在问问题,还是在回答问题?scanf是几种读取输入的方法之一。。。没有明显的理由不能使用它,甚至没有明显的理由。@VisioN所以如果它是家庭作业呢?SO欢迎提出家庭作业问题。@VisioN See@VisioN我从未要求任何人帮我解决这个问题,我要求帮助我研究什么。我学到了很多关于C的知识,但没有被灌输。放松点,你能从我的评论中看出来吗?我完成了,没有人给我直接的答案。有点遗憾,我不能fgets(),但我可以操作位。现在我明白你为什么要质疑它了,汉克斯,这就是我要找的注释类型。@AiguoNgan7:get()不可使用。它已被弃用。。请改为使用fgets()。请编辑..永远不要推荐
获取
。好的,所以我使用fgets(myArray,256,stdin)将输入放入我的数组。有没有办法找到输入的字符数?我尝试使用计数器在数组上迭代NULL或“”。两者都不起作用。。。谢谢,斯特伦-1成功了:D@AiguoNgan7“strlen-1有效”--文件不必以换行符结尾。。。最好明确地检查是否有。