马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
为什么达不到strncpy的功能 
#include <stdio.h> 
 
#define MAX 1024 
 
int main() 
{ 
        char str1[MAX]; 
        char str2[MAX]; 
 
        char *target1 = str1; 
        char *target2 = str2; 
         
        char ch; 
        int count,i=0; 
 
        printf("请输入一个字符串到 str1 中:"); 
        fgets(str1, MAX, stdin); 
         
        printf("请输入需要拷贝的字符个数:"); 
        scanf("%d",&count) ; 
 
        printf("开始拷贝 str1 的内容到 str2 中...\n"); 
        for (i=0;i<count;i++) 
        { 
                ch=*target1++; 
                         
                        *target2++=*target1++; 
                         
                        if(ch=='\0') 
                        { 
                                break; 
                        } 
                         
                        if((int)ch<0) 
                        { 
                                *target2++=*target1++; 
                        } 
                         
                } 
                 
                *target2++='\0'; 
         
 
        printf("拷贝完毕!"); 
        printf("现在,str2 中的内容是:%s\n", str2); 
 
        return 0; 
} 
你这样设置ch没啥用  
- while (count--)  
 
 -     {  
 
 -         *target2++ = *target2++;  
 
 -     }  
 
  复制代码 
当然了 你还要考虑count是否大于strlen(target1) 
以及如何结尾  
 
 
 |