标题:问一个关于将字符串常量赋给一个串的问题
取消只看楼主
dhr474226642
Rank: 1
来 自:江西省南昌
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-4-17
结帖率:0
已结贴  问题点数:20 回复次数:0 
问一个关于将字符串常量赋给一个串的问题
#include<stdio.h>
#include<stdlib.h>
#define null 0
typedef struct{
    char *ch;
    int length;
}hstring;
void strassign(hstring &t,char *chars){
    int i,c;
    if(t.ch)
        frhars;c;++iee(t.ch);
    for( i=0, c=*c,++c);//计算chars所指向的字符串的长度i
    if(!i)
    {
        t.ch=null;
        t.length=0;
    }
    else
    {
        if(!(t.ch=(char *)malloc(i*sizeof(char))))
            printf("error");
        for(int j=0;j<=i-1;j++)
            t.ch[j]=chars[j];
        t.length=i;
    }
}
void main()
{
   
    char *chars="hdjtdx";
    hstring t;
    strassign(t,chars);

    for(int i=0;i<t.length;i++)
        printf("%c",t.ch[i]);


我写以上程序的原本意图是想将字符串常量"hdjtdx"赋给串t,然后输出串t的内容。其中主函数我还没写完,当主函数执行完strassing(t,chars)时,指针t.ch已经不是指向串t的首地址,所以我想问问各位高手如何将指针t.ch重新指向串t的首地址,再用for循环输出串t的内容.谢谢哦!当然,如果各位有更好的办法实现赋值并输出的话,希望赐教。
搜索更多相关主题的帖子: 字符 常量 
2010-04-22 15:17



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-304034-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.368038 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved