Форум программистов, компьютерный форум CyberForum.ru

Использована неиницизированная перменная z - C++

Восстановить пароль Регистрация
 
Non_stop
0 / 0 / 0
Регистрация: 23.11.2014
Сообщений: 185
Записей в блоге: 1
30.06.2015, 15:28     Использована неиницизированная перменная z #1
Пишет ,что использована неиницизированная локальная переменная z. Подскажите как испрвить!!


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#include "stdafx.h"
#include<iostream>
#include<time.h>
#include<stdlib.h>
#include <stdio.h>
#include <string.h>
 
#include <iostream>
#include <algorithm>
#include <ctime>  
 
   using namespace std;
 
   int perevod(int n,char z);
 
 
    int main(){
        setlocale (LC_ALL,"RUS");
        char z;
        char first[26]={0};
        char second[26]={0};
        char third[26]={0};
        char fouth[26]={0};
        char sob[]="каждыйдень";
        int k=0,i,n=1,m=0,p=0,q=0;
        srand(time(0));
        int nov[34]={0};
        p=strlen(sob);
        int Arr[]={0,1, 2, 3, 4, 5, 6, 7, 8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,};
        random_shuffle(begin(Arr),end(Arr));
        for(i=0;i<25;i++){
            n=Arr[i];
            perevod(n,z);
            k++;
            printf("%2c",z);
            Arr[i]=first[i];
if ((k==5)||(k==10)||(k==15)||(k==20)||(k==25))
    printf("\n");
 
}
printf("\n");
system("pause");
    }
 
 
 
    int perevod(int n,char z){
        switch(n)
    {   
case 0:z='а';break;
case 1:z='б'; break;
case 2:z='в';break;
case 3:z='г';break;
case 4:z='д';break;
case 5:z='е';break;
case 6:z='ё';break;
case 7:z='ж';break;
case 8:z='з';break;
case 9:z='и';break;
case 10:z='й';break;
case 11:z='к';break;
case 12:z='л';break;
case 13:z='м';break;
case 14:z='н';break;
case 15:z='о';break;
case 16:z='п';break;
case 17:z='р';break;
case 18:z='с';break;
case 19:z='т';break;
case 20:z='у';break;
case 21:z='ф';break;
case 22:z='х';break;
case 23:z='ц';break;
case 24:z='ч';break;
case 25:z='ш';break;
case 26:z='щ';break;
case 27:z='ъ';break;
case 28:z='ы';break;
case 29:z='ь';break;
case 30:z='э';break;
case 31:z='ю';break;
case 32:z='я';break;
    }
        return z;
    }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rikimaru2013
30.06.2015, 15:34
  #2

Не по теме:

первый раз вижу, чтобы названием темы было б ответ на решение задачи

mr_mczakenberg
65 / 65 / 31
Регистрация: 10.04.2015
Сообщений: 281
30.06.2015, 15:35     Использована неиницизированная перменная z #3
Цитата Сообщение от Non_stop Посмотреть сообщение
Пишет ,что использована неиницизированная локальная переменная z. Подскажите как испрвить!!
Цитата Сообщение от Non_stop Посмотреть сообщение
char z;
Инициализировать переменную z , например. В дальнейшем значение этого char передается в функцию(см.ниже)... а что передавать-то? Значение не присвоили.

Цитата Сообщение от Non_stop Посмотреть сообщение
perevod(n,z);
* * * * * * k++;
* * * * * * printf("%2c",z);
Non_stop
0 / 0 / 0
Регистрация: 23.11.2014
Сообщений: 185
Записей в блоге: 1
30.06.2015, 15:39  [ТС]     Использована неиницизированная перменная z #4
mr_mczakenberg, Если я присвою значение допустим 'о', то он у меня останется на выводе на экран,хотя должен измениться в соответствии с подфункцией. А как надо сделать, чтобы новое значение z(которое мы получили из под функции) сохранилось и вывелось на печать?
ThePlague
 Аватар для ThePlague
95 / 95 / 59
Регистрация: 30.06.2015
Сообщений: 262
30.06.2015, 15:46     Использована неиницизированная перменная z #5
Non_stop, если я правильно понял код то ты в своей функции работаешь с копией..по этому значение твоего оригинала и не меняется.

Попробуй передавать в функцию не копию переменной а указатель не нее.
Non_stop
0 / 0 / 0
Регистрация: 23.11.2014
Сообщений: 185
Записей в блоге: 1
30.06.2015, 15:46  [ТС]     Использована неиницизированная перменная z #6
Спасибо, разобрался.
Yandex
Объявления
30.06.2015, 15:46     Использована неиницизированная перменная z
Ответ Создать тему
Опции темы

Текущее время: 06:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru