PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_and_CPP
[问题]请问C语言二为动态阵列输入字串
楼主:
hunkchen2000
(我没钱)
2016-09-25 13:20:05
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j;
char k[10];
char **ptr = (char **) malloc(2 * sizeof(char *));
for (i=0;i<3;i++)
{
ptr[i]=(char*)malloc(3 * sizeof(char));
}
//
作者:
ilikekotomi
(Young)
2016-09-25 13:35:00
printf用了%s应该是会印到阵列出现\0虽然不知道原本用途 但改用%c应该比较符合你的逻辑
作者:
EdisonX
(卡卡兽)
2016-09-25 13:40:00
应该会先 crash ?? 第一个 for 应该到 2
作者:
ilikekotomi
(Young)
2016-09-25 13:41:00
搞错你意思 原来是要6个字串由于每次你都是存到k这个阵列 所以会错掉如果你印是要用阵列的话却时要3维没错然后prt[i][j] = (char*)malloc(10*sizeof(char))将ptr[i][j]初始化后 用strcpy从k复制到ptr[i][j]但建议你不要用到那么多 或是改用C++的string应该是没什么必要弄成2*3阵列的字串才对建议你进一步厘清pointer和字串的观念来写会比较好
作者:
pttworld
(批踢踢世界)
2016-09-25 14:23:00
1000和3的关系是。。?
继续阅读
Makefile读档问题
cyysh4164
[问题] QT DESIGER产生CODE的地方
MOONY135
[问题] C语言字串扩张合并 内存管理问题
deo2000
[闲聊] CppCon的活动 SCM Challenge
Caesar08
[问题] template 编译错误
gigigigi
[问题] Qt CheckBox 按下去后更改本身的text
MOONY135
[问题] Qt安装包的问题(已解决)
Clangpp
[问题] CxImage Linking error
ming1144
[问题] OpenGL如何建视窗放2张图片
popen
[问题] Windows Driver 开发问题
dullhero
Links
booklink
Contact Us: admin [ a t ] ucptt.com