Thread: Adding a string array to another string array?

  1. #1
    Registered User
    Join Date
    Mar 2012

    Adding a string array to another string array?

    How would I go about adding a string array to another string array? I am scanning a file that takes each word and puts it in to a string array wbuf[]. Then I am sending wbuf[] to a function that checks if there is enough room in the lbuf[62] array. If there is enough room it copies wbuf[] into lbuf[62]. I can get it to copy one word into lbuf[62], but I can get it to continue to add the next words without running in to errors. Should i use sscanf(wbuf "%s", lbuf)? Sorry I am relatively new to programming. Thanks in advance.

    // Tanner Brandt
    // 002617908
    #include <stdio.h>
    #include <string.h>
    #define MAX_LINE_LEN 62
    int output (char wbuf[]);
    int space_check(int line_len);
    int get_text(void);
    int lbuf_len = 0;
        FILE *gettyText;
        FILE *csis2;
    int main(void){
        fopen_s(&gettyText, "getty.txt", "r");
        fopen_s(&csis2, "csis2.txt", "w");
        return 0;
    int get_text(void)
        int n = 0;
        char wbuf[10];
        while (!feof(gettyText))
            fscanf(gettyText, "%s", wbuf);
            output(wbuf, n);
        return 0;
    int output(char wbuf[], int n)
        extern int lbuf_len;
        int wordLength;
        char lbuf[62];
        wordLength = strlen(wbuf); // determines the size of the word    
        lbuf_len += wordLength; 
        if(space_check(lbuf_len) > wordLength - 1){
            printf("%s", wbuf);
                    sscanf(wbuf, "%s", lbuf[n]); // This is my problem
            strcat(wbuf, lbuf);              // This area is the problem
            //printf("%s", lbuf[n]);    // This is where I get the error
        if (space_check(lbuf_len) < wordLength -1){
            lbuf_len = 0;
            printf("Cleared space_remaining");
        return 0;
    int space_check(int lbuf_len){
        int space_remaining;
        space_remaining = MAX_LINE_LEN - lbuf_len;
        printf("%d", space_remaining);
        return space_remaining;

  2. #2
    Registered User
    Join Date
    Mar 2011
    the third argument to sscanf wants to be an address (pointer), not the value of the char.
    line 70 change lbuf[n] to &lbuf[n] or better yet investigate using strncat instead

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Constantly adding characters from an array to a string
    By mconflict in forum C Programming
    Replies: 2
    Last Post: 04-02-2012, 11:38 PM
  2. Replies: 3
    Last Post: 06-10-2011, 07:47 PM
  3. Replies: 1
    Last Post: 12-10-2008, 11:29 AM
  4. convert char** (c string array) to std::string[]
    By umen242 in forum C++ Programming
    Replies: 2
    Last Post: 11-11-2008, 05:52 AM
  5. Adding Scores from a string array
    By MB1 in forum C++ Programming
    Replies: 6
    Last Post: 11-11-2005, 07:27 AM