簡體   English   中英

我如何合並這兩個數組? C

[英]How would I merge these two arrays? C

我正在做學校作業,在弄清楚如何合並這兩個數組時遇到了麻煩。 我必須將每個數組的一半合並到第三個數組中。 我正在轉動輪胎,我想我已經在考慮必須做什么。 我不想浪費您的時間來解釋我嘗試過的所有事情。 任何幫助將不勝感激,如果您發布任何代碼,也可以向我解釋它在做什么,因為我想(盡可能多地)了解正在發生的事情!

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define SIZE 254    

int main()
{

使用用戶輸入在此處捕獲字符串

    char string_1[SIZE];
    printf( "Please enter a long string: " );
    fgets ( string_1, SIZE, stdin );

獲取字符串長度以計算字節大小

    size_t ln = strlen(string_1) - 1;
    if (string_1[ln] == '\n')
        string_1[ln] = '\0';    

重復...

    char string_2[SIZE];
    printf( "Please enter a long string: " );
    fgets ( string_2, SIZE, stdin );
    size_t ln2 = strlen(string_2) - 1;
    if (string_1[ln2] == '\n')
        string_1[ln2] = '\0';

打印兩個字符串的字節大小。

    printf("String 1 is %zu bytes long, and String 2 is %zu bytes long", ln, ln2);  

我想表達

    return 0;


}

檢查此代碼使用strncpy

char string_3[2*SIZE + 1];    
strncpy(string_3, string_1, strlen(string_1)/2);
string_3[strlen(string_1)/2] = '\0';
strncpy((string_3 + strlen(string_3)), string_2, strlen(string_2)/2);
string_3[strlen(string_1)/2 + strlen(string_2)/2] = '\0';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM