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

Определить все данные, тип которых вводится из командной строки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Упрощенная консольная графика и кодировка символов http://www.cyberforum.ru/cpp-beginners/thread455695.html
Всем привет! Сразу к делу! У Лфоре есть листинг программы horse.cpp. Так вот вродебы нащел листинг программы, нужные библиотеки для Microsoft компилятора... Но сталкнулся с такой проблемой как кодировка символов. Проблема в функции "putch"!Эта функция как то своеобразно выводит символы, а точнее не так как мне нужно.Мне нужен символ в кодировке ANSI под номером '\xDD' и '\xB3'. Я попробовал...
C++ С++ : перспективен ли он? Я сейчас в 9 классе. Хочу стать программистом со специализацией по С++. Стоит ли выбирать этот язык, я имею в виду сколько он ещё будет жить, ведь мне ещё 2 года в школе учиться, далее институт лет 5... Как бы он не стал маловостребованным... И как там дела с С#, C ? Так же интересует Java. И ещё: если есть перспективы у C++, то какую среду разработки брать : Builder или Visual Studio? http://www.cyberforum.ru/cpp-beginners/thread455686.html
Можно ли создать свой перегруженный вариант функций, для разных типов потока C++
Доброго времени суток. Хотелось бы задать несколько вопросов, ответы на которые мне не удалось найти в справочнике. 1. Можно ли создать свой перегруженный вариант функций, для разных типов потока (функция вывода: стандартный вывод, ostream и файловый вывод, ofstream; функция ввода: стандартный ввод, istream и файловый ввод, ifstream)? 2. Можно ли внутри самой функции ввода/вывода определить,...
C++ Вычислить значение выражения
Здравствуйте,вот решил покавырятся в заданиях из лабараторных работ (просто для себя) заинтересовала эта задача,но как ее записать я что-то совсем не пойму,запутался...Проблемм с циклами не возникало совсем,пока не увидел эту задачу) Даны три числа x, y, z. Найти а) max (x+y+z, xyz)+3, б) min (x2+y2, y2+z2)-4. Кому не сложно прошу помочь :) Компилятор GNC/GNU Code Blocks 10.05
C++ Почему появляется предупреждение Variable '...' set but not used http://www.cyberforum.ru/cpp-beginners/thread455657.html
Здравствуйте. Возник вопрос, почему при компиляции данного кода #include <iostream> int main( int argc, char** argv ) { int menu = 0, way = 1; bool pen = false; switch ( menu ) {
C++ Вычислить сумму значений массива в нечетных столбцах Дан массив X размерности M На N. Вычислить сумму значений массива в нечетных столбцах. подробнее

Показать сообщение отдельно
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,267
02.03.2012, 19:34     Определить все данные, тип которых вводится из командной строки
Исправил.
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
86
#include <stdio.h>
#include <windows.h>
#include <stdlib.h>
 
#define kolichestvo_el 12
 
 
using namespace std;
 
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
 
int f (char* p, char* tip) {
 
 //проверка- int не int;
 if (!(strcmp(tip, "int"))) {  
  if (atoi(p)&&!strchr(p, '.')) 
   printf ("%s целое число\n", p);
  else if ((strlen(p)==1)&& p[0]=='0') 
    printf ("%s целое число\n", p);
  return 0;
 }
 
 //проверка- double не double;
 if (!(strcmp(tip, "float"))|| !(strcmp(tip, "double"))) { 
  if (!(atoi(p)&&!strchr(p, '.')))  
   if (!((strlen(p)==1)&& p[0]=='0'))   
    if (atof(p)) 
     printf ("%s дробное число\n", p);
     return 0;
 }
 
 //проверка- char не char;
 if (!(strcmp(tip, "char"))) { 
  if (!(atoi(p)&&!strchr(p, '.')))
   if (!((strlen(p)==1)&& p[0]=='0'))
    if (!atof(p))
     if (strlen(p)== 1) 
      printf ("%s символ\n", p);
      return 0;
 }
 
 //проверка- char* не char*;
 if (!(strcmp(tip, "char*"))) { 
  if (!(atoi(p)&&!strchr(p, '.')))
   if (!((strlen(p)==1)&& p[0]=='0'))
    if (!atof(p))
     if (!(strlen(p)== 1)) 
      printf ("%s строка\n", p);
      return 0;
 }
 
 return 1;
}
 
 
 
 
 
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
int main(int argc, char* argv[]) {
 SetConsoleCP (1251);
 SetConsoleOutputCP (1251);
 
 char* proba [kolichestvo_el]= {(char*)"stroka", (char*)"c", (char*)"-234", (char*)"-456.77",\
                                (char*)"-121", (char*)"-3.45.7", (char*)"3.45.7", (char*)"0",\
                                (char*)"0.0", (char*)"-0", (char*)"-0.04", (char*)"qwe.erer"};
 
 
 //Вот ты запустил программу из консоли, допустим так:
 //main.exe int
 //И вот щас, в момент выполнения твоей программе доступны 
 //argv [0] и argv [1], причём argv [0] суть "main.exe",
 //argv [1] суть int
 //Воспользуемся этим 
 
 for (int i= 0; i< kolichestvo_el; i++) {
  if (f (proba[i], argv[1])) {
   printf ("Что-то ты не то ввёл\n");
   break;
  }
 }    
 
 return 0;
}
 
Текущее время: 17:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru