C 串 循环

assm 发布于 2013/04/22 17:28
阅读 313
收藏 0
#include<stdio.h>
#include<malloc.h>
#define maxsize 100
typedef struct
{
char data[maxsize];
int length;
} sqstring;
void strassgin(sqstring s,char cstr[] )
{
int i;
for(i=0;cstr[i]!='\0';i++){
s.data[i]=cstr[i];
s.length=i;
}
}
void dispstr(sqstring s)
{
int i;
if(s.length>0){
for(i=0;i<s.length;i++){
printf("%c",s.data[i]);
}
printf("\n");
}
}
int main()
{
sqstring s,s1;
printf("1,建立串s='abcdefghijklmn'和串sl='xyz';\n");
    strassgin(s,"abcdefghijklmn");
    strassgin(s1,"xyz");
printf("2,输出串s;\n");
dispstr(s);
return 0;
} 
以上为代码,,程序调试时无限循环,,谁能帮我看看呢??
加载中
0
fromdtor
fromdtor
line 9   :C是传值调用,修改的形参不会反应到原变量。
0
echor
echor
把地址传进去
0
谭恒杰
谭恒杰
将line9改为void strassgin(sqstring &s,char cstr[] ),这样就行了
返回顶部
顶部