Quantcast
Channel: Forum Pasja Informatyki - Najnowsze pytania
Viewing all articles
Browse latest Browse all 65225

Funkcja licząca, który wyraz najdłuższy, podwojny wskaźnik na char.

$
0
0
#include <iostream>
#include <cstring>
#define MAX_SIZE 30

using namespace std;
int policz (char *napisy)
{
    if(napisy==0)
    return 0;
    else
    return 1+policz(napisy+1);
}

int najdluzszy (char *T[], int rozmiar)
{
    
}

int main()

{
    char Ala[MAX_SIZE]={"Ala"};
    char ma[MAX_SIZE]={"ma"};
    char kota[MAX_SIZE]={"kota"};
    char i[MAX_SIZE]={"i"};
    char psa[MAX_SIZE]={"psa"};
    char *T[] = {Ala, ma, kota, i, psa};
   najdluzszy(T, 0);


    return 0;
}

Moim zadaniem jest napisanie programu, który za pomocą podanych zmiennych w funkcji najdluzszy z pomocą funkcji policz zwroci nam indeks najdłuższego elementu. Zadanie wydaje się być proste.. Jednak mam problem z prawidłowym przeslaniem Wskaźnika do funkcji policz. Probowałem policz(T[1]); jednak program się wyspuje.

policz(*T[1]);-spodowuje błąd kompilacji, tak samo jak policz(&T[1]);. Wiem, że do funkcji policz musze wysłać wskaźnik do Tablicy, wiec najbardziej prawdopodobna wydaje mi się opcja policz(T[1]);. Może to błąd jest  w funkcji policz? Debugger wskazuje, że wartości wyskakują poza zakres... Nie mam pomysłu...

 


Viewing all articles
Browse latest Browse all 65225

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>