c的问题# Programming - 葵花宝典m*g2015-07-27 07:071 楼看了两眼像火花,觉得再好的演员到于正手里做出来纠正能看到道具布景制作的光鲜了。胡军要说也是演技派的了,江一燕也已文艺范著称,到这戏里都显得假模假式的。
f*d2015-07-27 07:072 楼最近有点工作要用到c:想丛一个array复制到另一个array,想把内容复制过去,不能指向同一个地址(把指针复制过去)。我的代码是复制指针的,a的内容变了b的内容也变了,这不是我需要的。如何改正???char *a[3] = {"1", "2", "3"};char *b[3];b[0] = a[0];b[1] = a[1];b[2] = a[2];
s*t2015-07-27 07:073 楼她穿民女的素衣比较好看,上嘴唇的缺陷比较不明显. 当她浓妆艳抹,特别是把嘴唇描红之后, 上嘴唇拱起来太难看了.像猪鼻子. 最后一集里穿粉色旗袍太难看了.红色和粉色都不合适她. 白色,浅绿,浅黄等素色更能衬托她的气质.胡军演的大哥看不出精明和老奸巨猾,而是经常看到装傻. 老大不用装傻的吧.【在 m**********g 的大作中提到】: 看了两眼像火花,觉得再好的演员到于正手里做出来纠正能看到道具布景制作的光鲜了: 。胡军要说也是演技派的了,江一燕也已文艺范著称,到这戏里都显得假模假式的。
z*y2015-07-27 07:074 楼??strcpy ?【在 f**********d 的大作中提到】: 最近有点工作要用到c:: 想丛一个array复制到另一个array,想把内容复制过去,不能指向同一个地址(把指针: 复制过去)。: 我的代码是复制指针的,a的内容变了b的内容也变了,这不是我需要的。如何改正???: char *a[3] = {"1", "2", "3"};: char *b[3];: b[0] = a[0];: b[1] = a[1];: b[2] = a[2];
l*r2015-07-27 07:075 楼胡军的大哥演得太烂了【在 s******t 的大作中提到】: 她穿民女的素衣比较好看,上嘴唇的缺陷比较不明显. 当她浓妆艳抹,特别是把嘴唇: 描红之后, 上嘴唇拱起来太难看了.像猪鼻子. 最后一集里穿粉色旗袍太难看了.: 红色和粉色都不合适她. 白色,浅绿,浅黄等素色更能衬托她的气质.: 胡军演的大哥看不出精明和老奸巨猾,而是经常看到装傻. 老大不用装傻的吧.
f*d2015-07-27 07:076 楼简单一点说吧,a[0] = "a";a[0]其实是指向这个"a"的指针,如何把a[0]的内容提出来,放到一个新的string里。【在 z*y 的大作中提到】: : ??: strcpy ?
s*y2015-07-27 07:077 楼*b[I] = *a[I];【在 f**********d 的大作中提到】: 简单一点说吧,: a[0] = "a";: a[0]其实是指向这个"a"的指针,: 如何把a[0]的内容提出来,放到一个新的string里。
f*d2015-07-27 07:078 楼试了报错,其实我是要逐行读入文件,并把每一行用";"分隔成不同fields,再把fields存入array里。文件第一行是header,之后每行为 v1;v2;v3;v4;v5现在*Words[j] = *pch;报错了,说access violation writing location 0xccccccccc.fp = fopen("Data Files\ChestClinic.txt", "r");if (fp == NULL){printf("file is null");}i = 0;while (fgets(line, sizeof(line), fp)){if (i == 0){printf("The format of network structure file is:n");printf("%sn", line);printf("The data of network structure file is:n");}else{char *pch;// Define the array to store the words.char *Words[NUM_WORDS] = {NULL};j = 0;printf("%sn", line);pch = strtok(line, ";");while (pch != NULL){printf("%sn", pch);*Words[j] = *pch;pch = strtok(NULL, ";");j++;}// Check if the data format is alright.if (sizeof(Words)/sizeof(Words[0]) != NUM_WORDS){printf("The data format is wrong.n");}else{NodeNames[i - 1] = Words[0];}}i++;}【在 s******y 的大作中提到】: *b[I] = *a[I];
p*o2015-07-27 07:079 楼你对C完全没概念,还是拿Python做吧 ...0xccccccccc.【在 f**********d 的大作中提到】: 试了报错,其实我是要逐行读入文件,并把每一行用";"分隔成不同fields,再把: fields存入array里。: 文件第一行是header,之后每行为 v1;v2;v3;v4;v5: 现在*Words[j] = *pch;报错了,说access violation writing location 0xccccccccc.: fp = fopen("Data Files\ChestClinic.txt", "r");: if (fp == NULL): {: printf("file is null");: }: i = 0;
f*d2015-07-27 07:0710 楼不行啊,这个是api人家只提供c接口,不然我费什么劲。【在 p***o 的大作中提到】: 你对C完全没概念,还是拿Python做吧 ...: : 0xccccccccc.
n*u2015-07-27 07:0711 楼应该要从底层开始copy,array的element是char,int的话copy char,int就可以了(注意overflow)。array的element是object的话要run每个object的copy() function。*想问一下他的API是c的,你再根据你的需要写个转成其他语言的wrapper不可以么(比如swig)?除了performance需要,写c真的很劳命伤财的。
f*d2015-07-27 07:0712 楼谢谢参与讨论的网友,已经解决了,需要用malloc分配地址,然后用strcpy拷贝出来。c是什么都要操心,这也是它好的理由吧。【在 n*********u 的大作中提到】: 应该要从底层开始copy,array的element是char,int的话copy char,int就可以了(: 注意overflow)。: array的element是object的话要run每个object的copy() function。: *想问一下他的API是c的,你再根据你的需要写个转成其他语言的wrapper不可以么(比: 如swig)?除了performance需要,写c真的很劳命伤财的。
W*o2015-07-27 07:0713 楼这个好像是比较基础的C问题啊,当年写C的时候应该想都不用想【在 f**********d 的大作中提到】: 谢谢参与讨论的网友,已经解决了,需要用malloc分配地址,然后用strcpy拷贝出来。: c是什么都要操心,这也是它好的理由吧。
a92015-07-27 07:0714 楼你从一开始定义char *a[3], *b[3]就搞错了??【在 f**********d 的大作中提到】: 最近有点工作要用到c:: 想丛一个array复制到另一个array,想把内容复制过去,不能指向同一个地址(把指针: 复制过去)。: 我的代码是复制指针的,a的内容变了b的内容也变了,这不是我需要的。如何改正???: char *a[3] = {"1", "2", "3"};: char *b[3];: b[0] = a[0];: b[1] = a[1];: b[2] = a[2];
y*a2015-07-27 07:0715 楼char *a[3] = {"1", "2", "3"};char *b[3];a, b 的空间都是在栈上面分配的,跳出函数后就会被回收了。【在 f**********d 的大作中提到】: 谢谢参与讨论的网友,已经解决了,需要用malloc分配地址,然后用strcpy拷贝出来。: c是什么都要操心,这也是它好的理由吧。
f*d2015-07-27 07:0716 楼c都忘了,还是本科学的。不过还好,搞了两天,基本程序通了。【在 a9 的大作中提到】: 你从一开始定义char *a[3], *b[3]就搞错了: : ??